首页 > 数据库技术 > 详细

关于Mysql中REPLACE INTO未指明字段的值问题记录

时间:2020-07-29 14:56:34      阅读:170      评论:0      收藏:0      [点我收藏+]

技术分享图片

1 问题

在使用REPLACE INTO语句操作数据时,如果没有指定表的字段值丢失

2 原因

参看前人分析,这里不再累赘
https://www.cnblogs.com/monian/archive/2014/10/09/4013784.html

3 备忘

来源于前人分析中,文末的结论,特别记录

使用 REPLACE INTO 时最大的一个误区,未给字段值就「丢失」了,而通常这并非是业务上所预期的
更常见的需求实际上是:如果有冲突,更新已经明确指定的字段,其他未指定的字段则保持原状

而满足这一需求的 MySQL 官方说的是 INSERT INTO … ON DUPLICATE KEY UPDATE

鉴于此,很多使用 REPLACE INTO 的场景,实际上需要的是 ,在正确理解 REPLACE INTO 行为和副作用的前提下,谨慎使用 REPLACE INTO

官方说明
https://dev.mysql.com/doc/refman/8.0/en/replace.html
https://dev.mysql.com/doc/refman/8.0/en/insert-on-duplicate.html

关于Mysql中REPLACE INTO未指明字段的值问题记录

原文:https://www.cnblogs.com/bysion/p/13396222.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!