2013-02-16 66 views
2

你認爲我的問題是什麼。Android Sqlite沒有結果

我正在查詢一個sqlite數據庫。 此代碼不會給出任何結果。

String sql = " select _id from MYTABLE where _id = ? "; 
    Cursor cur = mDb.rawQuery(sql, new String[] {"5653"}) ; 

,但如果我執行查詢不帶參數是這樣的:按預期的方式返回

String sql = " select _id from MYTABLE where _id = 5653 "; 
    Cursor cur = mDb.rawQuery(sql, null) ; 

一行。

非常感謝。

回答

2

發生這種情況是因爲值綁定爲字符串,並且該列是(我猜測)一個int。在

您可以包括S其中在查詢中,將由來自selectionArgs兩個值來代替條款 - 所以在where子句最終會被

where _id = "5653" 

從rawQuery的javadoc selectionArgs兩個?這些值將被綁定爲字符串。

0

試試這個:

String sql = " select _id from MYTABLE where _id = '5653' ";