微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

database – SQLite – 表约束UNIQUE和列约束UNIQUE之间的任何区别?

关于sqlite的问题.

在CREATE TABLE sql中,我们可以以任一方式添加UNIQUE约束:column-constraint或table-constraint.我的问题很简单.他们的工作方式不同吗

我能找到的唯一区别是,在表约束中,单个约束中可能有多个索引列.

列约束:

表约束:

这是一个例子:

CREATE TABLE Example (
    _id INTEGER PRIMARY KEY,name TEXT UNIQUE ON CONFLICT REPLACE,score INTEGER
)

CREATE TABLE Example (
    _id INTEGER PRIMARY KEY,name TEXT,score INTEGER,UNIQUE (name) ON CONFLICT REPLACE
)

他们不一样吗?

解决方法

在这种情况下,没有区别.

但是,您可以在表上创建一个唯一约束,该约束将跨越两个不同的列.像这样:

CREATE TABLE Example (
    _id INTEGER PRIMARY KEY,index INTEGER,UNIQUE (name,index) ON CONFLICT REPLACE
)

有关详细信息,请参阅此帖子:
SQLite table constraint – unique on multiple columns

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐