試してみてください:rawQuery() documentationのように
String TABLE_URUN = "urun_table";
String KEY_ID = "ID";
public Cursor getDataWithId(String id) {
SQLiteDatabase db = this.getWritableDatabase();
String query = String.format("SELECT * FROM %s WHERE %s = ?", TABLE_URUN, KEY_ID);
Cursor res = db.rawQuery(query, new String[]{id});
return res;
}
:
selectionArgs文字列:あなたが含まれるのか? where句のクエリでは、 は、selectionArgsの値に置き換えられます。値 は文字列としてバインドされます。
あなたのような何かのために複数の選択を使用したいのであれば、:
SELECT * FROM TABLE WHERE KEY_ID = id AND KEY_OTHER = otherValue
あなただけの複数を追加する必要があります「?」 selectionArgsパラメータの文字列:
String KEY_OTHER = "other";
public Cursor getDataWithId(String id, String other) {
String query = String.format("SELECT * FROM %s WHERE %s = ? AND %s = ?", TABLE_URUN, KEY_ID, KEY_OTHER);
Cursor res = db.rawQuery(query, new String[]{id, other});
return res;
}
実際のID値はテーブル番号または文字列にありますか? –