服务器之家:专注于服务器技术及软件下载分享
分类导航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|数据库技术|

服务器之家 - 数据库 - Mysql - mysql #1062 –Duplicate entry '1' for key 'PRIMARY'

mysql #1062 –Duplicate entry '1' for key 'PRIMARY'

2019-12-04 13:45MYSQL教程网 Mysql

Mysql进行数据备份,还原后进行回帖,出现以下错误代码,其实主要是导入数据重复的问题,将现在的数据表清空,重新导入即可

近日一直在折腾vps ,刚刚碰到在搬移wordpress过程中导入数据库的时候。碰到了 

#1062 – Duplicate entry '1′ for key ‘PRIMARY' 

当时那个急啊,原本的数据我已经全部删除了,没办法只有请求万能的百度了。我找了大半天终于给我给我找到了。兴奋ing,马上测试,O(∩_∩)O哈哈~成功了。 

现在附上解决办法只要把原来的老数据清空导入就可以了。 

原理我不明白,贴上来你们自己看吧。反正达到目的就ok了、 

“提示#1062 – Duplicate entry '1′ for key ‘PRIMARY'了,后来才知道,原来上次超过限制的已经导进去了一部分,而id是主键,不能相同的,所以就不行了,把老的数据都删除,就可以重新导了。” 

在此还要感谢那位博主,把解决办法发表了出来。要不然我可就麻烦了。 

原文 

今天遇到的问题,很简单,但也很常见,做个记录在此: 
把数据从一个机器上导到另外一个机器上,因此记录太多,刚开始没注意,超过了phpmyadmin的限制,提示出错了,我把文件手动的给分成一些小文件,可是再导就提示#1062 - Duplicate entry '1' for key 'PRIMARY'了,后来才知道,原来上次超过限制的已经导进去了一部分,而id是主键,不能相同的,所以就不行了,把老的数据都删除,就可以重新导了。 

好了。你要是也碰到了跟我一样的问题,马上试试吧。不试不知道啊 


Mysql进行数据备份,还原后进行回帖,出现以下错误代码: 
Discuz! info: MySQL Query Error 

User: webcull 
Time: 2008-7-10 2:20pm 
Script. /post.php 

SQL: INSERT INTO [Table]posts (fid, tid, first, author, authorid, subject, dateline, message, useip, invisible, anonymous, usesig, htmlon, bbcodeoff, smileyoff, parseurloff, attachment) 
VALUES ('45', '2727', '0', 'webcull', '6', '', '1216707030', 'ddd', '192.168.253.1', '0', '0', '0', '0', '-1', '-1', '', '0') 
Error: Duplicate entry '2678' for key 1 
Errno.: 1062 


网上搜索分析原因: 
可能是字段pid为primary key且auto_increment属性,不能出现重复值。 
而我在备份数据时,可能有数据写入破坏了数据表。 


尝试了一些方法: 
1、数据表部分字段属性丢失 ALTER TABLE `cdb_posts` CHANGE `pid` `pid` INT( 10 ) UNSIGNED NOT NULL AUTO_INCREMENT 
2、repair table cdb_posts 
均失败! 


最后的解决方法: 
一般是因为数据表文件损害导致,可用MySQL的修复工具myisamchk 工具修复。 
cmd 
myisamchk cdb_posts.myi -r 
修复数据表就OK了!

延伸 · 阅读

精彩推荐