我有一张桌子
CREATE TABLE "myTable" (
"id" INTEGER NOT NULL,
"name" VARCHAR,
PRIMARY KEY ("id")
)
让我们说它有1条记录
1 - James
我想插入一条新记录。如果它不存在,请插入它。如果是的话,什么也不做。 我不确定以下查询是否是正确的方法:
INSERT or IGNORE INTO myTable(id, name) VALUES(1, "Tom");
我试过了,但我没有收到任何错误..
答案 0 :(得分:0)
您使用了INSERT IGNORE,并且实际上不会插入该行,因为它会导致重复键。您的id列是PRIMARY KEY,并且您已经将值1存储在数据库中。
该声明不会产生错误,但会产生警告。
答案 1 :(得分:0)
您的陈述适用于您想要做的事情。但是,您不需要在SQLite中为id
提供值。你可以这样做:
INSERT INTO myTable(name)
VALUES('Tom');
这会自动增加id
,因此您不必担心重复。