我在下面從http://www.sqlite.org/foreignkeys.html SQLite的文檔的說明但是我嘗試添加一個外鍵失敗。這裏是我的創建陳述:SQLite的外鍵
CREATE TABLE
checklist (
_id INTEGER PRIMARY KEY AUTOINCREMENT,
checklist_title TEXT,
description TEXT,
created_on INTEGER,
modified_on INTEGER
);
CREATE TABLE
item (
_id INTEGER PRIMARY KEY AUTOINCREMENT,
FOREIGN KEY(checklist_id) REFERENCES checklist(_id),
item_text TEXT, item_hint TEXT,
item_order INTEGER,
created_on INTEGER,
modified_on INTEGER
);
第一張桌子被罰款。第二條語句發生錯誤。我已經嘗試將兩個查詢包裝在一個事務中而沒有。這裏是錯誤:
外鍵定義中的未知列「checklist_id」(代碼1):,編譯時:CREATE TABLE item(_id INTEGER PRIMARY KEY AUTOINCREMENT,FOREIGN KEY(checklist_id)REFERENCES checklist(_id),item_text TEXT ,item_hint TEXT,item_order INTEGER,created_on INTEGER,modified_on整數)
Doh!謝謝大家! :-) – 2012-07-18 15:59:04
實際上,這有一個問題...約束必須在所有字段被定義之後出現。所以外鍵行應該在modified_on之後。 (如果有人在2019年尋求幫助。你好,從過去!) – 2012-07-18 17:19:33
我解決了這個問題。 @GeeksOnHugs,你應該能夠編輯你的問題的答案。有人必須批准編輯,但如果某人的回答出現錯誤,您可以在2019年爲那些人編輯它:) – Scen 2012-07-18 17:26:42