2014-01-31 125 views
0

我想將值從songDetails表複製到playlistDetails表。將值從一個表複製到另一個'where'條件

這裏是我的代碼:

public void transferData(String name) { 

    SQLiteDatabase db = this.getWritableDatabase(); 
    String selectQuery = "INSERT INTO "+ TABLE_CURRENTLIST + " SELECT * FROM " + TABLE_DATA + " WHERE " + KEY_ALBUMNAME+ " = " + name + ""; 
    db.execSQL(selectQuery); 
} 

在執行這個代碼,它拋出該異常

01-31 01:29:49.426: E/AndroidRuntime(3102): android.database.sqlite.SQLiteException: no such column: unknown (code 1): , while compiling: INSERT INTO PlayListDetails SELECT * FROM songDetails WHERE albumName = unknown 

的價值 '名稱' 變量是正確的。我想只複製具有未知的albumName的行。 我很苦惱。請幫幫我。

+1

你錯過了未知單引號。 –

+0

@vinoch將答案標記爲正確,如果它對你有幫助 – Hades

回答

1

您缺少查詢參數值附近的單引號(unknown)。 您的查詢應該是

String selectQuery = "INSERT INTO "+ TABLE_CURRENTLIST + " SELECT * FROM " + TABLE_DATA + " WHERE " + KEY_ALBUMNAME+ " = '" + name + "'"; 

我的建議是使用PreparedStatement樣式參數。

+0

非常感謝你 –

相關問題