我们都知道MySQL数据库中是讲究primarykey的唯一性的,如果primarykey出现了重复,则会影响其他的表制定的规则。
今天我们要和大家一起分享的是Mysql数据库中primarykey重复时的实际处理方案,我们对其一共分成3个处理方法,以下就是文章的主要内容。
以下的文章主要向大家讲述的是MySQL数据库中primarykey重复时的实际处理方案,我们大家都知道当insert进数据表,经常会发生唯一key(uniquekey与primarykey)重复时,会发生duplicatekey错误。
这种情况有三种处理方法,以下面的数据结构为例子
给加上userid列primarykey
插入数据
现在我要插入或者编辑userid为1的记录,但我不知道里面是否已经存在该记录.
MySQL数据库中primarykey重复时的实际处理方案1,先删除再插入之
MySQL数据库中primarykey重复时的实际处理方案2,使用replaceinton
这种情况下逻辑是这样的,MySQL先判断记录是否存在,若存在则先删除之,再自行insert.所以你能看到这条语句执行后affectedrows是2条(当然前提是你的数据表里userid为1的数据只有1条)
MySQL数据库中primarykey重复时的实际处理方案3,使用
这条语句的affectedrows也是2.
当然还有另外的处理方式就是直接用php来实现,
先select出来,发现没结果则insert,否则update.
还可以先update,发现affectedrows是0,则insert.
但明显这俩种办法都没有把工作直接交给MySQL处理效率高
以上就是我们介绍的处理primarykey重复的三种方案,大家学会了么?
下一篇:oracle数据类型详解
¥48.00¥180.00
¥798.00
¥48.00¥180.00
¥199.00
¥29.90
¥199.00