说明
当mysql数据包设置unique 或者primary key时,被约束的字段就必须是唯一的。新插入的数据如果发现冲突,就会抛出异常。
四条插入语句
- insert into表示插入数据,数据库会检查主键,如果出现重复会报错;
- replace into表示插入替换数据,需求表中有PrimaryKey,或者unique索引,如果数据库已经存在数据,删除旧数据,插入新数据,如果没有数据效果则和insert into一样;
- insert ignore表示,如果中已经存在相同的记录,则忽略当前新数据;
- ON DUPLICATE KEY UPDATE 关注非主键列,注意与ignore的区别。有则更新指定列,无则添加。
使用场景
如果发生约束建重复时:
1,要捕获异常,则选用insert into
2, 想要删除老的数据,插入新数据,则选用 replace into
3, 想要保存老数据,忽略新数据,则选用 insert ignore into
4 , 想要更新老数据中的某几列,其他列不变化,则选用 ON DUPLICATE KEY UPDATE
本文深入解析MySQL中的四种数据操作方式:insertinto、replaceinto、insertignoreinto与ONDUPLICATEKEYUPDATE的区别及应用场景。通过对比,帮助读者理解如何根据业务需求选择合适的数据操作策略。

979

被折叠的 条评论
为什么被折叠?



