1062: Duplicate entry for key(键的重复条目)
MySQL含义
插入或更新的行违反了 UNIQUE 索引或 PRIMARY KEY;相同的键值已经存在。
原因
以相同唯一键重复 INSERT、录入重复数据、AUTO_INCREMENT 计数器落后,或为已有表添加唯一索引时表中已存在重复行。
解决方法
错误消息会显示冲突的键值和索引名。要更新已有行,考虑使用 INSERT ... ON DUPLICATE KEY UPDATE 或 INSERT IGNORE / REPLACE。查找重复项:SELECT my_column, COUNT(*) FROM my_table GROUP BY my_column HAVING COUNT(*) > 1。如果无法添加唯一索引,先清理重复数据。
同一数据库的其他条目
- 1045Access denied for user (using password: YES/NO)(用户访问被拒绝(使用密码:YES/NO))
- 1213Deadlock found when trying to get lock; try restarting transaction(尝试获取锁时发现死锁;请尝试重新开始事务)
- 1205Lock wait timeout exceeded; try restarting transaction(超出锁等待超时;请尝试重新开始事务)
- 1040Too many connections(连接过多)
- 1064You have an error in your SQL syntax(SQL 语法错误)