首页 > 数据库 >SQL 错误 [1062] [23000]: Duplicate entry 'xxxx' for key 'xxxx'

SQL 错误 [1062] [23000]: Duplicate entry 'xxxx' for key 'xxxx'

时间:2022-09-03 13:11:43浏览次数:52  
标签:xxxx name 1062 Duplicate fieldname key SQL unique

异常内容

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);

标签:xxxx,name,1062,Duplicate,fieldname,key,SQL,unique
From: https://www.cnblogs.com/lpan1024/p/16652360.html

相关文章