SQLite之replace语句的行为

SQLite之replace语句的行为,第1张

概述replace语句和update语句有相似的地方, 但是也有很多不同之处。 1. replace语句会删除原有的一条记录, 并且插入一条新的记录来替换原记录。 2. 一般用replace语句替换一条记录的所有列, 如果在replace语句中没有指定某列, 在replace之后这列的值被置空 。 3. replace根据主键确定被替换的是哪一条记录 4. replace语句不能根据where子句来定

replace语句和update语句有相似的地方, 但是也有很多不同之处。
1. replace语句会删除原有的一条记录, 并且插入一条新的记录来替换原记录。
2. 一般用replace语句替换一条记录的所有列, 如果在replace语句中没有指定某列, 在replace之后这列的值被置空 。
3. replace根据主键确定被替换的是哪一条记录
4. replace语句不能根据where子句来定位要被替换的记录
5. 如果执行replace语句时, 不存在要替换的记录, 那么就会插入一条新的记录。
6. 如果新插入的或替换的记录中, 有字段和表中的其他记录冲突, 那么会删除那条其他记录。

replace语句和update语句的对比

对于update语句, 因为经常使用到,应该算比较熟悉。 下面对比一下update和replace语句的行为, 只是简单陈述, 不再以具体实例说明。

update语句使用where子句定位被更新的记录;

update语句可以一次更新一条记录, 也可以更新多条记录, 只要这多条记录都复合where子句的要求;

update只会在原记录上更新字段的值, 不会删除原有记录, 然后再插入新纪录;

如果在update语句中没有指定一些字段, 那么这些字段维持原有的值, 而不会被置空;

总结

以上是内存溢出为你收集整理的SQLite之replace语句的行为全部内容,希望文章能够帮你解决SQLite之replace语句的行为所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/1171748.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-02
下一篇 2022-06-02

发表评论

登录后才能评论

评论列表(0条)

保存