Duplicate entry ‘XXX‘ for key ‘XXX.PRIMARY‘解决方案。
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语句(真正的删除),而不是逻辑删除,同时后端用逻辑判断,去查询数据库中是否有相同的编号存在,如果存在,则不允许新增,如果不存在,则可以新增
Duplicate entry ‘XXX‘ for key ‘XXX.PRIMARY‘解决方案。相关推荐
- 执行SQL语句的时候唯一约束字段异常Duplicate entry '33382-1-0' for key xxx
前言:做项目的时候,执行SQL语句报了Duplicate entry '33382-1-0' for key xxx异常,后来发现是唯一约束导致,于是乎一通谷歌百度,后来解决了,记录一下. 正文: 代 ...
- 报错:pymysql.err.IntegrityError: (1062, “Duplicate entry ‘1‘ for key ‘mm.PRIMARY‘“)
1.报错 pymysql.err.IntegrityError: (1062, "Duplicate entry '1' for key 'mm.PRIMARY'") 因为插入的主 ...
- Java java.sql.SQLIntegrityConstraintViolationException:Duplicate entry ‘xx‘ for key ‘xx.PRIMARY‘问题解决
问题描述: Cause: java.sql.SQLIntegrityConstraintViolationException: Duplicate entry '111' for key 'users ...
- Duplicate entry ‘1‘ for key ‘user.PRIMARY‘
org.springframework.dao.DuplicateKeyException: Error updating database. Cause: java.sql.SQLIntegrity ...
- MySQLIntegrityConstraintViolationException: Duplicate entry ‘10xxxx-50xxxx‘ for key ‘xxx‘
mysql异常: ### Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Dupl ...
- 关于数据表中插入数据报错(pymysql.err.IntegrityError) (1062, “Duplicate entry ‘0112‘ for key ‘‘teacher.PRIMARY‘“)
文章目录 1.错误截图: 2.错误解决方案: 1.错误截图: 2.错误解决方案: 数据库的teacher表中已经存在了该数据.执行下面的操作会将报上面的错误. 在设置id和username属性的时候, ...
- MySQL报错:Duplicate entry ‘xxx‘ for key ‘xxx‘
报错信息: Duplicate entry 'xxx' for key 'xxx' 看到这个报错,我心想不就是主键的值重复了吗,可是查看对应的数据库表之后傻眼了,发现压根没有uk_cert_no这个字 ...
- 解决Duplicate entry ‘XXX‘ for key ‘XXX‘
Duplicate entry 'XXX' for key 'XXX',表示插入的值在表中有重复的数据.这个key是唯一索引,要么取消唯一索引,要么在后端判断是否已存在这个数据,如果有把它挡住,不让它 ...
- 插入数据时出现Duplicate entry ‘XXX‘ for key ‘XXX‘
Duplicate entry 'XXX' for key 'XXX',表示插入的值在表中有重复的数据.这个key是唯一索引,要么取消唯一索引,要么在后端判断是否已存在这个数据,如果有把它挡住,不让它 ...
最新文章
- HDU 2717 Catch That Cow(BFS)
- Mysql笔记2-----重要小点
- 2021年全新各方向IT职业技能图谱
- 解决ie7不支持after、before的方法
- [Python图像处理] 十九.图像分割之基于K-Means聚类的区域分割
- 浅谈SAP Cloud for Sales 自动化
- python那些事儿编程技巧_python一些编程技巧(持续更新)
- 全民直播,半年“用云量”暴涨五倍
- Jmeter系列之常用组件(二)
- 坑了我一个小时的脚本执行
- python编程资料包_强力推荐,非常全的Python编程400集学习资料(今日限免)
- 十八、JAVA基本数据类型的包装类
- carrot2 Workbench org.apache.http.client.HttpResponseException: Not Found 以及其他类找不到错误的解决办法
- selenium chromedriver 下载地址
- 打印纸张计算机耗材,耗材相关:与打印机产生故事的常用纸类型
- Intellij IDEA误删文件恢复
- 程序化交易系统的搭建
- echarts3D地球
- Cannot save setting
- TextRank算法原理简析、代码实现
热门文章
- 所需即所获:IDE = _plugins_ + vim
- 设备管理器的蓝牙设备卸载了,找不到蓝牙
- win7系统如何关闭广告弹窗操作方法教学
- 数据库 Table is marked as crashed and should be repaired 解决办法
- 火遍全世界的网红美女李子柒一年能赚多少钱,数据量化给你看,连中央媒体都为她打call...
- css情景动画,css3中的动画属性animation应用场景及编写代码教程
- Java基于ssm的大学生社团管理系统 计算机毕业设计
- android string 原理,Android中的SpannableString,Spans以及TextView绘制原理
- 手机互联网的一点看法
- [nRF51822] 1、一个简单的nRF51822驱动的天马4线SPI-1.77寸LCD彩屏DEMO