Discuz教程网

Discuz发帖报Duplicate entry '%s' for key %d如何处理

[复制链接]
authicon dly 发表于 2015-12-19 12:45:42 | 显示全部楼层 |阅读模式
错误编号:1062
问题分析:
向唯一字段插入相同数据。
解决方法:
1、请检查程序是否做了修改,如果修改过,建议用我们的原程序覆盖您的修改,再次检查问题。
2、如果您的站点上有 phpMyAdmin ,还可以通过他检查下您的数据库中出错的表的自增字段的当前自增值是否和该表中自增字段的最大值相同,如果相同则会出现该错误。
3、如果您正在转移数据库,请确认数据库的版本是否相同。
4、如果以上方法还未解决,请恢复备份

方法 2 的检查修改详细流程:(以Discuz! 的 threads 表为例,其他操作均相同)

1)进入您的 phpMyAdmin


forum.php?mod=attachment&aid=MTA1NXxhNTI4NDUzYXwxNDUwNTAwMDk3fDB8MTQwMQ%3D%3D&noupdate=yes&.jpg
2)选择出错的表,并找到该表的自增字段,有auto_increment 标识的字段即为该表的自增字段

forum.php?mod=attachment&aid=MTA1MXxkYThlYWZjZHwxNDUwNTAwMDk3fDB8MTQwMQ%3D%3D&noupdate=yes&.jpg



3)进入到这里点击结构可以看到自增字段是哪个值,目前此表的自增字段是tid

forum.php?mod=attachment&aid=MTA1MnxkYzM0N2Q5YXwxNDUwNTAwMDk3fDB8MTQwMQ%3D%3D&noupdate=yes&.jpg



4)点击浏览看下这个tid自增字段这个值得最大到多少了,并且记录这个最大值
这里您点击tid两下箭头向下就是降序排序可以看到这个最大值了
目前这个是688

forum.php?mod=attachment&aid=MTA1M3wzYjc1MTE1ZXwxNDUwNTAwMDk3fDB8MTQwMQ%3D%3D&noupdate=yes&.jpg



5)点击该页面上方的操作,会看到“表选项”中的auto_increment项,这就是下一条你要插入的数据的自增字段的值,如果这个值和刚才记下的当前自增字段的最大值一样,就会报错了,所以将这个值改为大于刚才记下的当前自增字段的最大值,然后点击“执行”,即可解决问题。

forum.php?mod=attachment&aid=MTA1NHwyY2YzNjkzNnwxNDUwNTAwMDk3fDB8MTQwMQ%3D%3D&noupdate=yes&.jpg



6)刚才我们记录tid最大值是688,目前这个下一个插入数据的值是689,这样不会报错,如果是688或小于688的一个值就会报这个错误了




上一篇:discuz如何去掉帖子资料里面的QQ交谈
下一篇:Discuz限制会员每小时发帖的主题数
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

1314学习网 ( 浙ICP备10214163号 )

GMT+8, 2024-5-17 16:45

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表