如果实际上没有插入,我想将记录插入到 sqlite 表中。
假设它有三个字段 pk, name, address
如果之前没有添加该名称,我想插入带有该名称的新记录。
我们可以在单个查询中完成此操作吗?有时它似乎与 SQL 查询略有不同。
最佳答案
是的,您可以通过单个查询来做到这一点。
INSERT ON CONFLICT IGNORE 应该可以帮助您:http://www.sqlite.org/lang_conflict.html
在名称上放置一个唯一的键,如果名称已经存在,这将在您尝试插入记录时产生冲突。
默认是 ABORT,所以如果没有 IGNORE,语句将返回一个错误。如果您不想这样,请使用 IGNORE。
关于SQLite 查询插入记录如果不存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2779823/