关于 SQLite 的问题。
在 CREATE TABLE SQL 中,我们可以通过以下任一方式添加 UNIQUE 约束:列约束或表约束。我的问题很简单。他们的工作方式不同吗?
我能发现的唯一区别是,在表约束中,可能有多个indexed-column
s 在单个约束中。
Column-constraint:
Table-constraint:
这是一个例子:
CREATE TABLE Example (
_id INTEGER PRIMARY KEY,
name TEXT UNIQUE ON CONFLICT REPLACE,
score INTEGER
)
and
CREATE TABLE Example (
_id INTEGER PRIMARY KEY,
name TEXT,
score INTEGER,
UNIQUE (name) ON CONFLICT REPLACE
)
它们有什么不同吗?
在这种情况下没有区别。
但是,您可以在表上创建一个唯一约束,该约束将跨越两个不同的列。像这样:
CREATE TABLE Example (
_id INTEGER PRIMARY KEY,
name TEXT,
index INTEGER,
score INTEGER,
UNIQUE (name, index) ON CONFLICT REPLACE
)
请参阅此帖子了解更多详细信息:SQLite 表约束 - 多列上唯一 https://stackoverflow.com/questions/2701877/sqlite-table-constraint-unique-on-multiple-columns
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)