这篇文章给大家分享的是有关MySQL中怎么使用replace into语句处理出错的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
replace into实现原理
如果新插入行的主键或唯一键在表中已经存在,则会删除原有记录并插入新行;
如果在表中不存在,则直接插入。这样就会存在缺陷,如果某个字段有默认值,在使用replace into做数据修改时会将默认值的字段恢复到默认值,造成数据丢失。
一般replace插入更新时,其中没有指定的列会被置空。其根据主键确定要replace的记录,无法根据where确定。
使用实例
mysql> select * from student;+-----------+----------+| name | classNum |+-----------+----------+| hublanker | 5 || huyanshi | 5 || test1 | 10 || test2 | 20 |+-----------+----------+4 rows in set (0.00 sec)mysql> replace into student(name,classNum) values("test2",21);Query OK, 2 rows affected (0.00 sec)mysql> select * from student;+-----------+----------+| name | classNum |+-----------+----------+| hublanker | 5 || huyanshi | 5 || test1 | 10 || test2 | 21 |+-----------+----------+4 rows in set (0.00 sec)
感谢各位的阅读!关于“MySQL中怎么使用replace into语句处理出错”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!