当前位置:Gxlcms >
数据库问题 >
sqlite "insert or replace" 和 "insert or ignore" 用法
sqlite "insert or replace" 和 "insert or ignore" 用法
时间:2021-07-01 10:21:17
帮助过:6人阅读
insert or ignore:如果不存在就插入,存在就忽略
只对UNIQUE约束的字段起作用。
举例:建表:CREATE TABLE TEST(id BIGINT, name text, birthday datetime, PRIMARY KEY(id, name));或者CREATE TABLE TEST (id BIGINT, name text, birthday datetime, UNIQUE(id, name));插入记录:insert into test values (10,‘aa‘,‘2010-01-01 01:01:01‘);insert into test values (11,‘bb‘,‘2011-01-01 01:01:01‘);insert into test values (12,‘cc‘,‘2012-01-01 01:01:01‘);依次执行以下语句看结果:1、insert or replace into test values (10,‘jj‘,‘2016-01-01 01:01:01‘);//不存在,插入id name birthday
---------- ---------- -------------------
10 aa 2010-01-01 01:01:01
11 bb 2011-01-01 01:01:01
12 cc 2012-01-01 01:01:01
10 jj 2016-01-01 01:01:01
2、insert or replace into test values (11,‘bb‘,‘2016-01-01 01:01:01‘);//存在,更新
id name birthday
---------- ---------- -------------------
10 aa 2010-01-01 01:01:01
12 cc 2012-01-01 01:01:01
10 jj