SQLite在没有UNIQUE约束的列上不唯一

时间:2013-11-28 09:37:08

标签: android sql sqlite

我很难搞清楚问题所在。

我有一个非常标准的数据库架构

CREATE TABLE some_table ( id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, 
...
some_other_id INTEGER);

SQLiteOpenHelper正常创建数据库。 第一个条目正常添加,但当我尝试添加更多条目时,我得到

android.database.sqlite.SQLiteConstraintException: column some_other_id is not unique 

已经检查ContentValues并且它们没问题(ID未定义) 我的插入语句如下:

INSERT INTO some_table ( some_other_id ) VALUES (?);

和some_other_id设置为0

我知道为什么会出现此错误或可能发生错误?

1 个答案:

答案 0 :(得分:0)

标记为唯一的索引会对列实施约束。

如果您的其他列包含id,则通常会在连接或过滤器选择中使用,从而激活列的索引。