2012-04-18 62 views
0

爲什麼我得到這個代碼的錯誤?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 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:致沒有這樣的柱:沃爾沃:, 在編譯:SELECT _id ,grlist_name,grlist_priority, grlist_finished,grlist_notes,grlist_hidden,grlist_quantity, grlist_group FROM GL_table WHERE grlist_group =沃爾沃

回答

2

更改此:

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);