我想寫一個sql語句,如果某個行ID不存在其他更新,則執行插入操作。 所以我已閱讀和下面應該工作,但它只是凍結我的SQLite數據庫瀏覽器:SQL插入其他更新不起作用
任何想法?
INSERT INTO details
(id, name, age)
VALUES
(「1」, "mike", "22")
ON DUPLICATE KEY UPDATE
name = 「mike」
age = 「22」
我想寫一個sql語句,如果某個行ID不存在其他更新,則執行插入操作。 所以我已閱讀和下面應該工作,但它只是凍結我的SQLite數據庫瀏覽器:SQL插入其他更新不起作用
任何想法?
INSERT INTO details
(id, name, age)
VALUES
(「1」, "mike", "22")
ON DUPLICATE KEY UPDATE
name = 「mike」
age = 「22」
很難找到關於這個問題目前的職位,但現在看來,「對重複密鑰更新」中不存在的SQLite。你需要找到一種替代方法來做到這一點。這兩種方法我已經找到的
1)關於衝突...更換http://www.sqlite.org/lang_conflict.html不更新,但會刪除給定行,然後用新值將其插入和
2)的try/catch子句,像這樣:http://blog.client9.com/2007/11/21/sqlite3-and-on-duplicate-key-update.html這是以編程方式從衝突中捕獲錯誤,並在出現錯誤時執行更新
謝謝隊友!我需要的是INSERT OR REPLACE – userMod2
SQLite!= mysql –
至少,在複製後需要逗號之間的兩個字段 –
使用單個或者在DUPLICATE部分使用雙引號,你現在還有別的東西。 – Mihai