0

次のようなクエリを書きたいのですが、例外が発生します。

mDb.query(DATABASE_TABLE, new String[] {KEY_ROWID, KEY_TITLE,
                KEY_BODY,KEY_location  , KEY_GOAL_DATE,KEY_ABSOLUTE_DATE, KEY_DATE_CURRENT ,KEY_PRIO,KEY_DONE, KEY_CATEGORY,KEY_TIME_SPEND,KEY_POSOSTO, KEY_FATHER}, KEY_FATHER + " LIKE" + "'"+ "fid"+"'"+ "AND"+ KEY_ROWID + "LIKE" + "'"+ "uid"+"'", null, null, null, null);

And、Or.iに関連する2つの引数を持つwhere句の正しい構文を知っている人は、まだ有用なものを見つけていません。よろしくお願いします。

4

3 に答える 3

0

コードが文字どおりに記述されている場合、SQL キーワードの前後にスペースが必要です。

mDb.query(DATABASE_TABLE, new String[] {KEY_ROWID, KEY_TITLE,
                KEY_BODY,KEY_location  , KEY_GOAL_DATE,KEY_ABSOLUTE_DATE, KEY_DATE_CURRENT ,KEY_PRIO,KEY_DONE, KEY_CATEGORY,KEY_TIME_SPEND,KEY_POSOSTO, KEY_FATHER}, KEY_FATHER + " LIKE " + "'"+ "fid"+"'"+ " AND "+ KEY_ROWID + " LIKE " + "'"+ "uid"+"'", null, null, null, null);

発生しているエラーを提供していないため、他の問題が発生しているかどうかはわかりませんが、まだ表示されていない場合は、少なくとも問題は解決するはずです。

于 2012-07-11T16:58:30.813 に答える
0

ゴードンはあなたに正しい答えを与えました。エラー コードにはまだスペースがありません。また、fid と uid が変数の場合は、それを囲む引用符を削除して、次のようなものを使用する必要があります。

    KEY_FATHER + " LIKE " + fid + " AND "+ KEY_ROWID + " LIKE " + uid

お役に立てれば。

于 2012-07-11T17:18:14.083 に答える
0

ドキュメンテーションをチェックし、仲間を検索するのに少し努力してください..

于 2012-07-11T17:04:22.277 に答える