1

私のコードにはデータベースがあり、で行を取得するKEY_DESC = userselectvalueとうまくいきました。しかし、複数の「where」条件で行を取得しようとすると失敗しました。以前は、取得した要素を で表示していましたListView。私を助けてください。エラーは表示されません。しかし、ListView空白です。

 public Cursor fetchEventByName(String inputText,String inputText1) throws SQLException {
        //Log.w(TAG, inputText);
        SQLiteDatabase db = this.getReadableDatabase();

        Cursor mCursor = null;
        if ((inputText == null || inputText.length () == 0) && (inputText1 == null || inputText1.length () == 0 ) ){
        mCursor = db.query(DATABASE_TABLE, new String[] {KEY_ROWID,
                KEY_DESC, KEY_EVENT, KEY_DATE },
        null, null, null, null, null);
        }
        else {

            String [] temp = new String[] {KEY_ROWID,
                    KEY_DESC, KEY_EVENT, KEY_DATE};
        mCursor = db.query(false,DATABASE_TABLE,temp ,
                KEY_DESC + " = '" + inputText + "'" + " AND " + KEY_DATE + " = '" + inputText1+ "'", null, null, null, null, null);


        }

        if (mCursor != null) {
        mCursor.moveToFirst();
        }
        return mCursor;
   }
4

1 に答える 1

0

SQLクエリを直接渡すことで、db.rawQueryを試すことができます。

于 2013-08-14T12:00:19.653 に答える