假设我有一张 table :
Table A:
Id Name Movie Comment
1 Foo Bar anything
2 Foo Bar anything
这里我想确保用户不能插入 Foo 和 Bar 两次,但允许他插入 Foo 和 foobar 。
防止这种重复的一种解决方案是添加此语句 ALTER TABLE table ADD UNIQUE KEY(Name , Movie)。
这可能是针对 sql 而不是 sqlite。我在 python 中为 sqlite3 编写了与 cur.execute("ALTER TABLE ADD UNIQUE KEY(Name,Movie)")
相同的命令。它给了我错误 sqlite3.operationalerror: near "unique"syntax error。在创建表 A 时是否可以做任何事情,或者我的 sqlite 查询中是否有任何错误。
感谢帮助。
最佳答案
CREATE UNIQUE INDEX IDX_Movies ON table(Name, Movie)
这是标准 SQL,记录在 http://sqlite.org/lang_createindex.html . (SQLite 的在线文档非常全面)
关于python - 防止多个约束sqlite3 python的重复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13244212/