SQLite中特殊的INSERT语句
2024-09-28 05:17:24
SQLite中特殊的INSERT语句
在SQLite中,INSERT是基本语句,用来向表中插入数据。但是当表中存在字段存在唯一、非空、检查、主键等约束时,插入的数据很容易和约束冲突,造成插入操作失败。为了解决这类问题,SQLite提供集中特殊的INSERT语句。下面依次介绍一下:
(1)INSERT OR REPLACE语句:如果引起约束冲突,则取消插入操作。如果是与唯一、主键约束冲突,则将已存在的数据进行更新。如果是与非空约束操作,并且存在默认值设置,则将冲突的空列使用默认值替代,然后插入;否则,按照INSERT OR ABORT方式执行。如果是与检查约束冲突,则按照INSERT OR ABORT执行。
(2)INSERT OR ABORT语句:如果引起约束冲突,则取消该插入操作。如果在一个事务中,不会回滚当前事务,继续执行当前事务的后续操作。
(3)INSERT OR ROLLBACK语句:如果引起约束冲突,则取消该插入操作。如果在一个事务中,会回滚当前事务。
(4)INSERT OR FAIL语句:如果引起约束冲突,则取消该插入操作。如果在一个事务中,不会回滚当前事务,但会取消当前事务的后续操作。
(5)INSERT OR IGNORE语句:如果引起约束冲突,则取消该插入操作。如果在一个事务中,不会回滚当前事务,继续执行当前事务的后续操作。与INSERT OR ABORT不同的,它不会触发SQLITE_CONSTRAINT错误。
最新文章
- 计算机●编程语言●JAVA
- js +1的动画效果
- (LinkedList)Intersection of Two Linked Lists
- Nginx HA 及https配置部署
- thinkphp接手机网站接口
- ABBYY应用到的行业有哪些
- GridViewWIthSubActivityDemo
- grappelli美化django的admin页面
- PyQt4环境搭建与使用
- SQL类型转换以及自动在前面补0满足10位工号标示法
- CreateEvent、SetEvent、ResetEvent和WaitForSingleObject
- JSSDK微信自定义分享
- [js高手之路]深入浅出webpack教程系列9-打包图片(file-loader)用法
- c# 图解泛型List<;T>;, HashTable和Dictionary<;TKey,TValue>;
- vue + hbuilder 开发备忘录
- Java IO编程全解(四)——NIO编程
- 如何将备份的oracle数据库还原到指定用户下。
- 赚钱的小生意,VC对你没兴趣
- 老男孩linux实训学生入学资格考试题(技术部分)
- oracle11gR2 win7_32位客户端连接虚拟机中oracle11gR2 win7_32位服务器方法