SQLite: INSERT OR REPLACE

本文介绍了如何使用INSERTORREPLACE命令在数据库中高效地处理数据,通过创建UNIQUE约束实现插入新数据或更新现有数据。实例演示了如何在带有唯一约束的表中插入或更新,同时解释了UNIQUE和PRIMARY KEY的区别。
部署运行你感兴趣的模型镜像

一、说明

遇到需要批量插入和修改数据库的情况:

如果该条数据不存在,则进行插入操作;否则如果存在,则进行更新操作。

使用INSERT OR REPLACE命令即可满足需求

语句规范INSERT OR REPLACE INTO table-name (column-name,...) VALUES (column-value,...)

二、具体操作

1、创建UNIQUE约束

UNIQUE约束: 唯一约束,防止在一个特定的列存在两个记录具有相同的值

UNIQUEPRIMARY KEY约束有什么异同点?

相同点:
PRIMARY KEY也是UNIQUE,即不可重复

不同点:

PRIMARY KEY是非空的,但是UNIQUE可以为空
只能有一个主键,但是唯一索引可以有多个
如果没有指定聚合索引,那么主键默认为聚合索引,唯一索引不具备该特性

CREATE TABLE COMPANY( ID INT PRIMARY KEY, NAME TEXT NOT NULL UNIQUE, AGE INT NOT NULL);

 IDNAME都是UNIQUE的,所以命令只有在两个值都不存在时,才会进行插入,否则更新当前数据

//表为空时,不存在则插入
INSERT OR REPLACE INTO COMPANY (ID, NAME, AGE) VALUES (1, 'Rose', 18);
//存在则更新
//并全部覆盖(如果某个字段为空,则该字段的值为0或NULL)
INSERT OR REPLACE INTO COMPANY (ID, NAME, AGE,ADDRESS) VALUES (1, 'Rose', 19);



参考链接:https://www.jianshu.com/p/bfa617a0b9b1

您可能感兴趣的与本文相关的镜像

ACE-Step

ACE-Step

音乐合成
ACE-Step

ACE-Step是由中国团队阶跃星辰(StepFun)与ACE Studio联手打造的开源音乐生成模型。 它拥有3.5B参数量,支持快速高质量生成、强可控性和易于拓展的特点。 最厉害的是,它可以生成多种语言的歌曲,包括但不限于中文、英文、日文等19种语言

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值