Я пытаюсь вставить данные в таблицу. Я хотел бы вставить строку, если в столбце уже нет данных - независимо от других столбцов.
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');
С приведенным выше фрагментом я получаю 3 строки, а не 1, как я и думал. Если это имеет значение, фактический sql происходит внутри триггера INSTEAD OF INSERT
, это просто простой тестовый пример.