当前位置:网站首页>Duplicate entry ‘XXX‘ for key ‘XXX.PRIMARY‘解决方案。
Duplicate entry ‘XXX‘ for key ‘XXX.PRIMARY‘解决方案。
2022-08-02 02:46:00 【m0_67403013】
mysql insert时报错:Duplicate entry ‘XXX’ for key ‘XXX.PRIMARY’
今天在插入数据时,出现一个错误
com.jfinal.plugin.activerecord.ActiveRecordException:
com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException:
Duplicate entry 'xxxxxx' for key 'xxxx.PRIMARY'
网上查看说是主键冲突了,但是查看数据库并没有,把所有数据清空,或者把表删了之后,在重新建也还是报同样的错。
…
…
…
最后的结果方案:
- 方案一:设置主键自增,适合主键为int类型(我的主键是varchar)
- 方案二:把insert into 表名() values();修改为:insert ignore into 表名() values(); (问题解决)
MySQL 提供了Ignore 用来避免数据的重复插入.
IGNORE :
若有导致unique key 冲突的记录,则该条记录不会被插入到数据库中.
MySQL INSERT IGNORE 详解请移步:MySQL INSERT IGNORE
原因:这是由于表中对应字段设置了唯一索引,在我们进行逻辑删除时,并没有真正的删除,只是标记为删除状态而已,
当我们再进行新增的时候,由于有唯一索引的限制,导致我们不能进行新增成功,所以报错.
解决方法1:
如果允许的话,把数据库中该字段的唯一索引限制去掉,这样后端可以进行逻辑删除,新增时即使与标记为删除的记录的字段值相等,由于没有唯一索引的限制,可以正常新增
解决方法2:
不需要去掉数据库中的唯一索引限制,但是当后端开发进行删除操作的时候,执行的是物理删除的sql语句(真正的删除),而不是逻辑删除,同时后端用逻辑判断,去查询数据库中是否有相同的编号存在,如果存在,则不允许新增,如果不存在,则可以新增
先自我介绍一下,小编13年上师交大毕业,曾经在小公司待过,去过华为OPPO等大厂,18年进入阿里,直到现在。深知大多数初中级java工程师,想要升技能,往往是需要自己摸索成长或是报班学习,但对于培训机构动则近万元的学费,着实压力不小。自己不成体系的自学效率很低又漫长,而且容易碰到天花板技术停止不前。因此我收集了一份《java开发全套学习资料》送给大家,初衷也很简单,就是希望帮助到想自学又不知道该从何学起的朋友,同时减轻大家的负担。添加下方名片,即可获取全套学习资料哦
边栏推荐
- Nanoprobes多组氨酸 (His-) 标签标记:重组蛋白检测方案
- esp32经典蓝牙和单片机连接,,,手机蓝牙作为主机
- Nacos源码分析专题(二)-服务注册
- Talking about the "horizontal, vertical and vertical" development trend of domestic ERP
- feign调用不通问题,JSON parse error Illegal character ((CTRL-CHAR, code 31)) only regular white space (r
- AI target segmentation capability for fast video cutout without green screen
- 使用self和_(下划线)的区别
- analog IC layout-Design for reliability
- How ReentrantLock works
- ros多客户端请求服务
猜你喜欢
esp32经典蓝牙和单片机连接,,,手机蓝牙作为主机
analog IC layout-Parasitic effects
GTK RGB图像绘制
因为WiFi原因navicat 无法连接数据库Mysql
51. 数字排列
Chapter 7 Noise analysis
analog IC layout
永磁同步电机36问(三)——SVPWM代码实现
Reflex WMS Intermediate Series 7: What should I do if I want to cancel the picking of an HD that has finished picking but has not yet been loaded?
mockjs生成假数据的基本使用
随机推荐
CASE2023
内卷的正确打开方式
四元数、罗德里格斯公式、欧拉角、旋转矩阵推导和资料
PHP live source code to achieve simple barrage effect related code
VPS8701 电源管理(PMIC) VPS8701
How engineers treat open source
PAT甲级打卡-1001-1004
递归检查配置项是否更变并替换
搭建zabbix监控及邮件报警(超详细教学)
项目场景 with ERRTYPE = cudaError CUDA failure 999 unknown error
【LeetCode】104.二叉树的最大深度
记一次gorm事务及调试解决mysql死锁
Remember a gorm transaction and debug to solve mysql deadlock
mysql 查看死锁
【web】Understanding Cookie and Session Mechanism
数值积分方法:欧拉积分、中点积分和龙格-库塔法积分
网络层解析——IP协议、地址管理、路由选择
很有意思的经历,很有意思的项目--文件夹对比工具
Moonbeam and Project integration of the Galaxy, bring brand-new user experience for the community
Service discovery of kubernetes