SQL 错误 [1062] [23000]: Duplicate entry 'xxxx' for key 'xxxx'
异常内容
SQL 错误 [1062] [23000]: Duplicate entry 'xxxx' for key 'xxxx'
分析异常
如果报错内容如上所示,原因该表有一列唯一索引或者多列添加了联合唯一索引
解决方案
1.找到唯一索引
SQL操作
-- 查看表的所有约束 show keys from tableName; -- 查看约束名为name_unique的主键 show keys from tableName where key_name = 'name_unique';
Navicat客户端操作
2.解决方式
SQL操作
2.1找到该表的重复数据,根据业务场景删除重复的数据即可
select fieldname,count(fieldname) from tablename group by fieldname having count(fieldname) > 1;
2.2删除该表唯一索引或者联合唯一索引
-- 删除name_unique的约束 alter table tablename drop index name_unique; -- 创建名为name_unique的联合唯一约束(2个字段联合唯一) alter table tablename add unique key name_unique ( name,parent_id);
笔者: 沙漏倒装回忆1024
出处:https://www.cnblogs.com/lpan1024/
版权所有,欢迎保留原文链接进行转载!
请点赞关注留言,如果有任何建议也可以留言,因为我会回复每一条评论,感谢阅读。
作者:沙漏倒装回忆1024
版权所有,转载请注明原文链接: https://www.cnblogs.com/lpan1024/p/16652360.html
请点赞关注留言,如果有任何建议也可以留言,因为我会回复每一条评论,感谢阅读。
版权所有,转载请注明原文链接: https://www.cnblogs.com/lpan1024/p/16652360.html
请点赞关注留言,如果有任何建议也可以留言,因为我会回复每一条评论,感谢阅读。