2015-06-29 29 views
0

我陷入了一個很奇怪的問題。在我能夠更新數據庫值時,當試圖獲取對應的值,我沒有得到任何東西。SQLiteDatabase,更新後的值在選擇查詢中不匹配

enter image description here 在這個數據庫中,我插入這些行,日期分別爲29,6月爲最後兩行,但是當我這些日期更新爲15,並試圖獲取對應於該日期

String where = COL_DATE + " = ?"; 
    String[] args = {"15"}; 
    Cursor cursor = db.query(TABLE_DAILY_EXPENSE, null, where, args, null, null, null); 

然後Log.d(TAG, "Cursor count= " + cursor.getCount());給0`

凡爲通過獲取一個月,它更新域之後給出數= 2 所以我得出結論,在某個地方,它不匹配的最新領域獲取對應的行。但爲什麼會發生?不知道。

`

+0

發送您的** ** ARGS單quots – Furqan

+0

@Furqan無我們不能 – Abhishek

+0

嘗試使用原始查詢:db.rawQuery(「SELECT * FROM DAILY_EXPENSES WHERE DATE ='」+ date +「'」); –

回答

0

數據庫中的值是一個數字。 您正在搜索的值是一個字符串,它是不同的。

Android的數據庫API只允許字符串作爲在大多數地方的參數,所以你要直接插入數到SQL命令:

String where = COL_DATE + " = " + 15; 
String[] args = null;