如何在插入前檢查存在的值?INSERT與IF存在SQL,SQLite
INSERT INTO DeliveryOrder (ContactName, ContactID) VALUES ('Andy', (SELECT ContactID FROM Contact WHERE ContactName = 'Andy'))
我想在插入記錄之前驗證ContactID是否存在。
只好嘗試以下,但不工作:
INSERT INTO DeliveryOrder (ContactName, ContactID) VALUES ('Andy', (SELECT ContactID FROM Contact WHERE ContactName = 'Andy')) WHERE IF Exists (SELECT ContactID FROM Contact WHERE ContactName = 'Andy')
你可以事先檢查(在一個事務),或者你可能會發現'INSERT OR REPLACE'或'INSERT OR IGNORE'有用(參見[SQLite文檔](http://sqlite.org/lang_insert.html))。 – TripeHound
不要檢查存在。在導入過程中定義唯一的約束並忽略約束違規錯誤。 – ceving