我有一個SQL INSERT語句有問題。我試圖插入存儲在字符串中的數據,但是這總是會引發錯誤。使用變量的Android SQL INSERT語句問題
private final String HASH_DB = "hashDb";
private final String HASH_TABLE2 = "newHashes";
SQLiteDatabase hashDB = null;
hashDB = this.openOrCreateDatabase(HASH_DB, MODE_PRIVATE, null);
hashDB.execSQL("CREATE TABLE IF NOT EXISTS " + HASH_TABLE2
+ " (dialogID INT, Filename VARCHAR, Hash VARCHAR);");
hashDB.execSQL("INSERT INTO " + HASH_TABLE2 +" (dialogID, Filename, Hash) "
+ " Values (dialogID, filename, newHash);");
dialogID是一個int,和文件名,哈希都是字符串,我已確認正確的數據是通過在吐司顯示它們存儲在這些。
上面會拋出一個錯誤,但如果我將最後一行更改爲下面的內容,即硬編碼要插入的數據,它將起作用。
hashDB.execSQL("INSERT INTO " + HASH_TABLE2 +" (dialogID, Filename, Hash) "
+ " Values (4, 'filename', 'newHash');");
我該如何得到這個工作?
非常感謝
馬特
有什麼錯誤? – Sumit