【发布时间】:2012-08-19 18:28:38
【问题描述】:
我正在尝试将数据插入表中。如果该列还没有数据,我想插入该行 - 无论其他列如何。
CREATE TABLE t (
id INTEGER PRIMARY KEY,
name VARCHAR,
other INT
);
INSERT OR IGNORE INTO t (name) VALUES ('a');
INSERT OR IGNORE INTO t (name) VALUES ('a');
INSERT OR IGNORE INTO t (name) VALUES ('a');
使用上面的 sn-p,我最终得到 3 行,而不是我想象的 1 行。如果实际的 sql 发生在 INSTEAD OF INSERT 触发器内很重要,这只是一个简单的测试用例。
【问题讨论】:
-
请注意that:
INSERT OR IGNORE完全等同于:INSERT ON CONFLICT IGNORE。
标签: sqlite