为了账号安全,请及时绑定邮箱和手机立即绑定

ON DUPLICATE KEY重复插入,影响行数2rows

ON DUPLICATE KEY重复插入,影响行数2rows

慕桂英546537 2019-01-02 21:53:45
使用insert on duplicate key update插入重复数据的时候,只更新了重复唯一索引的数据,返回影响行数为2行。查资料都是说操作会执行两部操作:1.insert表尝试插入【尝试插入,存在重复数据,此时应无表数据变更】2.update更新唯一索引的值【变更行数1】所以比较困惑另外一处变更是发生在哪里,第一次提问,求大佬解惑相关代码// 请把代码文本粘贴到下方(请勿用图片代替代码)表结构CREATE TABLE test1 (  id     INT AUTO_INCREMENT     PRIMARY KEY,  name   VARCHAR(20) NOT NULL,   stu_id INT         NOT NULL)  ENGINE = InnoDB;id唯一insert into test1 VALUES ('4','小黑','2') on DUPLICATE KEY UPDATE stu_id=stu_id+1;commit;

1 回答

?
九州编程

TA贡献1785条经验 获得超4个赞

insert on duplicate key update是不会去做删除数据操作的,replace语句才会
影响行数为2的原因,可以参考这篇文章mysql自增id超大问题查询

查看完整回答
反对 回复 2019-01-02

添加回答

代码语言

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号