当前位置:  开发笔记 > 前端 > 正文

SQLite查询插入记录如果不存在

如何解决《SQLite查询插入记录如果不存在》经验,为你挑选了2个好方法。

如果实际上没有插入记录,我想在sqlite表中插入一条记录.

假设它有三个字段pk,name,address

如果没有预先添加该名称,我想用名称插入新记录.

我们可以在一个Query中执行此操作.似乎有时与SQL查询略有不同.



1> Konerak..:

是的,你可以用一个查询来做到这一点.

INSERT ON CONFLICT IGNORE应该帮助你:http://www.sqlite.org/lang_conflict.html

在名称上放置一个唯一键,如果名称已存在,则在尝试插入记录时会产生冲突.

默认值为ABORT,因此如果没有IGNORE,语句将返回错误.如果您不想这样,请使用IGNORE.



2> SQLighter..:

如果你不能UNIQUE INDEX结合使用INSERT INTO或者INSERT OR IGNORE INTO,你可以写一个像这样的查询;

INSERT INTO table (column)
SELECT value
WHERE NOT EXISTS (SELECT 1 
                  FROM table 
                  WHERE column = value)

推荐阅读
拾味湖
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有