INSERT或IGNORE INTO不起作用

时间:2014-07-16 15:59:28

标签: sqlite insert ignore

我创建了一个表:

create table association (_id integer unique primary key autoincrement , id_rules integer, id_places integer)";

为避免复制条目,我使用语句INSERT或IGNOR,但它不起作用。例如, 值(id_rules,id_places)=(" 11"," 1")alredy in table,但使用:

INSERT OR IGNORE INTO association (id_rules , id_places) VALUES ("11","1")

创建一个新行。 拜托,有人知道我的错吗?

1 个答案:

答案 0 :(得分:2)

INSERT或IGNORE将忽略任何违反UNIQUE约束的行。

唯一的约束是_id列,您没有指定。

如果要防止这两列中的重复,则必须为表定义添加约束:

CREATE TABLE association (
    _id INTEGER PRIMARY KEY AUTOINCREMENT,
    id_rules INTEGER,
    id_places INTEGER,
    UNIQUE (id_rules, id_places)
);