python - 防止多个约束sqlite3 python的重复

标签 python sqlite

假设我有一张 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/

相关文章:

python - 如何从具有动态列的数据框中获取值

python - 如何在 python Windows 中使用 Linux 命令

python - 使用多个特征训练 sklearn 分类器

mysql - 我可以通过特定列的唯一计数进行限制吗?

Perl SQLite 错误处理 : taking different actions according to the error code

python - 读取 MIDI 输入

python - 无法在 Telegram Bot API 中使用 "send_message"

android - 特殊字符的问题

android - 如何在 SQLite 中将毫秒转换为日期

java - 异步删除和更新数据库中的项目