【发布时间】:2015-04-01 17:38:15
【问题描述】:
我有一张这样的桌子:
database.execSQL("CREATE TABLE IF NOT EXISTS food_table (food_id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL , food_name CHAR, food_raw CHAR)");
我有一个这样的字符串数组:
public static ArrayList<String> rawsNames = new ArrayList<String>();
现在我想在我的表中搜索,如果所有未加工的食物都在 rawsNames 中,则返回 food_name。
我这样做:
String raws = AdapterNotes.rawsNames.toString().replace("]", "").replace("[", "");
Cursor cursor = G.database.rawQuery("select * from food_table WHERE food_raw LIKE '%" + raws + "%' ", null);
while (cursor.moveToNext()) {
String name = cursor.getString(cursor.getColumnIndex("food_name"));
但是当食物的原料被改变时,它就不起作用了。
请帮帮我。
【问题讨论】:
-
很难准确说出这里发生了什么。您能否详细说明具体发生了什么变化,以及它如何阻止功能正常工作?
-
SQL 数据库是问题的一部分吗?如果不是,那么也许您可以使用字符串文字发布一段可编译且独立的代码。
标签: java android arrays sqlite