Android sqlite查询,其中包含字符串
为什么这个代码会出错Android sqlite查询,其中包含字符串,android,sqlite,Android,Sqlite,为什么这个代码会出错 public Cursor getAllTitlesFromInnerListGroup(String tablename, String grp) { String[] columns = new String[]{KEY_ROWID_T, KEY_NAME_T, KEY_PRIORITY_T, KEY_FINISHED_T, KEY_NOTES_T, KEY_HIDDEN_T, KEY_QUANTITY_T, KEY_GROUP_T}; //return
public Cursor getAllTitlesFromInnerListGroup(String tablename, String grp) {
String[] columns = new String[]{KEY_ROWID_T, KEY_NAME_T, KEY_PRIORITY_T, KEY_FINISHED_T, KEY_NOTES_T, KEY_HIDDEN_T, KEY_QUANTITY_T, KEY_GROUP_T};
//return ourDatabase.query("GL_" + tablename, columns, KEY_GROUP_T + "='Volvo'", null, null, null, null); //this works
return ourDatabase.query("GL_" + tablename, columns, KEY_GROUP_T + "=" + grp, null, null, null, null);
}
04-18 21:10:53.118:E/AndroidRuntime(30721):由以下原因引起:
android.database.sqlite.SQLiteException:没有这样的列:Volvo:,
编译时:选择_id、grlist\u name、grlist\u priority、,
grlist\u完成、grlist\u注释、grlist\u隐藏、grlist\u数量、,
grlist\u组来自总账表,其中grlist\u组=沃尔沃
更改此项:
return ourDatabase.query("GL_" + tablename, columns, KEY_GROUP_T + "=" + grp,
null, null, null, null);
为此:
return ourDatabase.query("GL_" + tablename, columns, KEY_GROUP_T + "= ?" ,
new String[]{grp}, null, null, null);