这个错误是比较扯蛋的!!
Duplicate entry '108' for key 'PRIMARY'
insert into ***_ecms_news_data_1(id,classid,writer,befrom,newstext) values('108','33','','','a17
');
其实就是说 这个主键 已经有值了,不能再插入相同的主键值。
原因是:
帝国CMS文章需要3个表关联实现的,而由于某种原因其中的一个表被删除了一部分,导致新增的信息ID值,与关联表的ID值不匹配,导致ID主键重复。(例如,文章表a,b,c 其中b表中有id值1-100的数据,a表中只有id值1-50的数据。这是因为删除a表数据时未同时删除b表数据造成的。于是乎,插入新的数据时,a表id为51,并将该id写入关联表b中,表b发现有主键重复,自然写不了数据了。)
解决办法:在a表中新增最大id记录(大于b表的最大id即可。),这样以后插入的数据都不会重复。
帝国CMS是(cw_ecms_news表关联_cw_ecms_news_data_1):
INSERT INTO `cw_ecms_news` VALUES ( 150, 1, 1, '', '', '', 1, 'admin', '', 1, 0, 1333244472, 0, 1, 0, 0, ',b|', '', '1', 0, 0, 0, 0, 0, 0, '企业11111', 1333244427, '', 0, 1, 1350716513, 0, 0, 0, 0, '', '企业理念:诚信、专业、高效 星兴财务\r\n', 0, '1', '', 0, '', 0);
(红字部分,即是id值)