帝国CMS后台添加信息报错Duplicate entry xx for key PRIMARY

2023-10-17 0 518

帝国CMS后台添加信息报错Duplicate entry 'xx' for key 'PRIMARY',出现以下代码

Duplicate entry '3261' for key 'PRIMARY'insert into ***_ecms_news_index(classid,checked,newstime,truetime,lastdotime,havehtml) values('1','1','1446087639','1446087687','1446087687','1');

这种帝国CMS报错是因为ecms_news_index索引数字不对,索引ID“3261”的信息已经存在,后添加的信息索引ID必须大于“3261”才行。

照成这种错误一般是后台丢失数据,导致索引无法正常递增混乱。

方法1:后台修复数据库

如果进的了后台尝试后台修复数据库,点击 后台 系统 备份与恢复数据 备份数据

帝国CMS后台添加信息报错Duplicate entry xx for key PRIMARY

拉到最下面 点击修复数据表和优化数据表即可

帝国CMS后台添加信息报错Duplicate entry xx for key PRIMARY

方法2:插入一个大于当前索引的信息

如果后台修复没有用,那我们就来手动或SQL插入一个大于“3261”等等信息,让索引ID重新递增。

手动操作直接参考数据库的信息,ID填一个大于“3261”的即可。

SQL插入看下面代码

INSERT INTO `phome_ecms_news` VALUES (3262, 1, 1, '', '', '', 1, 'admin', '', 1, 0, 1333244472, 0, 1, 0, 0, ',b|', '', '1', 0, 0, 0, 0, 0, 0, '帝国cms模板', 1333244427, '', 0, 1, 1350716513, 0, 0, 0, 0, '', '帝国cms模板', 0, '1', '', 0, '', 0);

第一个字段“3262”就是索引ID,后面的参考自己的字段调整。

方法3:批量重新生成索引

如果以上都不行,只能用SQL想办法让索引ID重新生成一遍,建议分条执行,一是避免超时,二是能发现错误

CREATE TABLE [!db.pre!]ecms_newstemp AS(SELECT id,classid,newstime,truetime,lastdotime,havehtml FROM [!db.pre!]ecms_news);
ALTER TABLE `[!db.pre!]ecms_newstemp` ADD COLUMN `checked` tinyint(1) not null DEFAULT 0 AFTER `classid`;
ALTER TABLE `[!db.pre!]ecms_newstemp` add primary key (id);
alter table [!db.pre!]ecms_news_index rename to [!db.pre!]ecms_news_indexbak;
alter table [!db.pre!]ecms_newstemp rename to [!db.pre!]ecms_news_index;
ALTERTABLE`[!db.pre!]ecms_news_index`CHANGE`id``id`INT(10)NOTNULLAUTO_INCREMENT;
alter table [!db.pre!]ecms_news_index add index(classid);
alter table [!db.pre!]ecms_news_index add index(checked);
alter table [!db.pre!]ecms_news_index add index(newstime);
alter table [!db.pre!]ecms_news_index add index(truetime);
update [!db.pre!]ecms_news_index set checked=1;
收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

1、如非特殊说明,本站对本文提供的代码或者素材不拥有任何权利,其版权归原著者拥有。
2、以上提供的代码或者素材均为作者提供和网友推荐收集整理而来,仅供学习和研究使用。
3、如有侵犯你版权的,请来信(邮箱:admin@mail.52muban.com)指出,核实后,本站将立即改正。
4、如有链接无法下载、失效或广告,请点击下面的报错或者联系我们处理!
5、以上资源售价只是赞助,不代表代码或者素材本身价格。收取费用仅维持本站的日常运营所需!
6、本站所有资源、教程、源码,不得用于非法站点及用途,后果自负!本站不为非法站点提供任何服务。

我爱模板网 帝国cms教程 帝国CMS后台添加信息报错Duplicate entry xx for key PRIMARY https://www.52muban.com/129053.html

常见问题
  • 我们承诺演示效果图均和网站一模一样,如有不同,全额退款,并且我们的模板和数据都没有留后门,请放心使用。
查看详情
  • 本站所有源码版权归原作者所有,我爱模板网提供的源码只能用于学习研究,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。
查看详情
发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务

© 2022 我爱模板网- 52muban.com . Powered by WordPress. All rights reserved 网站地图 粤ICP备2020135806号
本站由 腾讯云 提供CDN加速/云服务