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错误。

SQLite中特殊的INSERT语句相关推荐

  1. sql server根据表中数据生成insert语句

    sql server根据表中数据生成insert语句 -- ====================================================== --根据表中数据生成inser ...

  2. mysql insert报错_mysql数据库使用insert语句插入中文数据报错

    在mysql的命令行模式中,通过insert语句插入中文数据的时候报错,类似于下面这样: Incorrect string value: '\xE7\x8F' for column 'name' at ...

  3. SQLite Insert 语句(http://www.w3cschool.cc/sqlite/sqlite-insert.html)

    SQLite Insert 语句 SQLite 的 INSERT INTO 语句用于向数据库的某个表中添加新的数据行. 语法 INSERT INTO 语句有两种基本语法,如下所示: INSERT IN ...

  4. mybatis insert 忽略 联合唯一索引_MySQL实战中,Insert语句的使用心得总结

    提到MySQL的Insert语句,你肯定不陌生,或许已经张口就来:不就是insert into table values(xxx,xxx,xxx)嘛!没错,但在实战中,根据不同的需求场景,插入操作在语 ...

  5. 【解决】insert 语句无效果,在查询中正常运行问题

    今天碰到一个奇怪的问题,具体见csdn:http://topic.csdn.net/u/20120424/19/0aeacbce-a9d5-4630-8b87-a08d5df1828b.html?se ...

  6. 【SQL Sever】将SQL Sever中的一个数据表的数据导出为insert语句

    例如:这SQL   Sever中的一张数据表,想要将这张数据表中的数据  转化成一个一个的insert语句存储在txt的文档中,那么不论走到那里这个insert语句一执行,我们就能将这个数据表中的数据 ...

  7. (八大方法、逐层深入,有你一定没见过的)使用INSERT语句向表中插入数据

    (八大方法.逐层深入,有你一定没见过的)使用INSERT语句向表中插入数据 (八大方法.逐层深入,有你一定没见过的) 使用INSERT语句向表中插入数据(MSSQLSERVER版) 做开发的同仁对于向 ...

  8. 添加的oracle语句,Oracle中Insert语句的总结

    在oracle中,insert语句的使用: 1.insert into 表1(列名1,列名2,--) values(值1,值2,--) 2.insert into 表1(列名1,列名2,--) sel ...

  9. access insert语句怎么写_码住!MySQL中超实用的几种SQL语句

    在写SQL时,经常灵活运用一些SQL语句编写的技巧,可以大大简化程序逻辑.减少程序与数据库的交互次数,有利于数据库高可用性,同时也能显得你的SQL很牛B,让同事们眼前一亮. 目录 实用的SQL 1.插 ...

最新文章

  1. 用树状数组解决求区间最值的问题:hdu1754
  2. HTML5元素周期表
  3. python项目-这4个Python实战项目,让你瞬间读懂Python!
  4. JUnit基础及第一个单元测试实例
  5. 数据结构-串操作应用之词索引表
  6. 看反病毒专家对EICAR检测代码的专业解读
  7. tomcat一闪而过
  8. linux命令之which
  9. linux新手常用命令
  10. stringbuffer用法 java_StringBuffer的用法
  11. 基于OMAPL138的Linux字符驱动_GPIO驱动AD9833(一)之miscdevice和ioctl
  12. hdu5773 The All-purpose Zero(DP)
  13. zabbix监控的快速部署
  14. python3中unicode-objects must be encoded before hashing问题
  15. STM32蓝牙控制LED灯开关
  16. 【office】Visio 2016 画大括号(花括号) + 调整花括号尖角居中
  17. vmware启动报错Entering emergency mode
  18. JS 计算时间差(月份差、天数差)
  19. Resistors in Paralle题解
  20. IP地址0.0.0.0表示什么

热门文章

  1. 设置session失效的几种方法
  2. NodeJS安全设计:好吃的草莓味糖果,只给好朋友小红
  3. solr配置-Schema.xml
  4. TimeSpan 时间间隔
  5. 异常详细信息: System.Web.HttpException: 请求在此上下文中不可用
  6. nginx 405 not allowed问题的解决
  7. 在不丢失堆栈跟踪的情况下重新抛出Java中的异常
  8. 当postgres的主键序列不同步时,如何重置?
  9. 除非换行符在格式字符串中,否则为什么在调用后printf不会刷新?
  10. 获得插入行身份的最佳方法?