sqlite3.OperationalError: "REFERENCES" 附近的语法错误 - 外键创建
我正在尝试创建一个外键。查看了手册后,我写了以下代码:
db.execute("create table if not exists table1 (id integer PRIMARY KEY, somedata integer)")
db.execute("create table if not exists table2 (names text, REFERENCES maintable (id)")
结果却出现了这个错误:
sqlite3.OperationalError: 在 "REFERENCES" 附近:语法错误
我错过了什么呢?我该如何创建外键?谢谢。
我的sqlite版本是3.7.4
1 个回答
2
你的第二行写错了,应该是这样:
db.execute("create table if not exists table2 (names text,my_id integer, FOREIGN KEY(my_id) REFERENCES maintable (id))")
具体解释可以参考这个链接:http://www.sqlite.org/foreignkeys.html#fk_basics