立即免费下载 Discuz!6.1.0正式版
Discuz! 6.1.0 使用说明
Discuz!NT升级至v2.1
开放源码下载
UCenter Home 1.2 正式版发布
官方站 | 帮助文档
基于ECShop的免费网店托管-卖否
PHP实战精英班培训 | LAMP培训大连
Discuz!收费服务内容及价格
论坛免费升级 手握手
Discuz!/ECShop 专用官方虚拟主机
注册付费广告征集
Comsenz 招聘信息
网店系统ECShop v2.6.0正式版火热发布
基于Discuz!的免费论坛空间5D6D
第二届PHP中国开源发展及人才状况调查
发新话题
打印

[使用] 出现 Errno: 1062 的解决方法

出现 Errno: 1062 的解决方法

最近有很多会员都有这类的问题,所以我整理发了出来,希望可以帮到大家。
出现原因1:
通常出现这类 Errno: 1062 的问题都是因为相关的数据表没有把 auto-increcement 属性给添加。(不是每个 Errno: 1062 都是这个原因)

出现问题的例子
引用:
SQL: INSERT INTO 0516cdb_posts (fid, tid, first, author, authorid, subject, dateline, message, useip, invisible, usesig, htmlon, bbcodeoff, smileyoff, parseurloff, attachment)
VALUES ('34', '317', '0', '叶子', '3', '', '1137052398', '121212', '58.218.22.136', '0', '1', '0', '-1', '-1', '', '0')
Error: Duplicate entry '17258' for key 1
Errno.: 1062
原因是因为 cdb_posts 的数据表里的属性没有添加 auto-increcement 所导致。

解决方法
复制内容到剪贴板
代码:
ALTER TABLE `cdb_posts` CHANGE `pid` `pid` INT( 10 ) UNSIGNED NOT NULL AUTO_INCREMENT;
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

出现像例子的问题就需要看一看到底是那个数据表没有加上 auto-increcement

在例子中的
INSERT INTO 0516cdb_posts (fid, tid, first, author, authorid, subject, dateline, message, useip, invisible, usesig, htmlon, bbcodeoff, smileyoff, parseurloff, attachment)
cdb_posts 的没有加上属性没有添加 auto-increcement

如何升级这些数据?
到后台“数据库”里的“数据库升级”,然后把相关的代码贴进,按“提交”。

以下是各类的 auto-increcement 数据表,大家可以根据问题的数据表进行升级。
cdb_ 是默认的表名前缀,如果不同大家可以自行修改。

cdb_adminnotes
复制内容到剪贴板
代码:
ALTER TABLE `cdb_adminnotes` CHANGE `id` `id` MEDIUMINT(8) UNSIGNED NOT NULL AUTO_INCREMENT;
cdb_advertisements
复制内容到剪贴板
代码:
ALTER TABLE `cdb_advertisements` CHANGE `advid` `advid` MEDIUMINT(8) UNSIGNED NOT NULL AUTO_INCREMENT;
cdb_announcements
复制内容到剪贴板
代码:
ALTER TABLE `cdb_announcements` CHANGE `id` `id` SMALLINT(6) UNSIGNED NOT NULL AUTO_INCREMENT;
cdb_attachments
复制内容到剪贴板
代码:
ALTER TABLE `cdb_attachments` CHANGE `aid` `aid` MEDIUMINT(8) UNSIGNED NOT NULL AUTO_INCREMENT;
cdb_attachtypes
复制内容到剪贴板
代码:
ALTER TABLE `cdb_attachtypes` CHANGE `id` `id` SMALLINT(6) UNSIGNED NOT NULL AUTO_INCREMENT;
cdb_banned
复制内容到剪贴板
代码:
ALTER TABLE `cdb_banned` CHANGE `id` `id` SMALLINT(6) UNSIGNED NOT NULL AUTO_INCREMENT;
cdb_bbcodes
复制内容到剪贴板
代码:
ALTER TABLE `cdb_bbcodes` CHANGE `id` `id` MEDIUMINT(8) UNSIGNED NOT NULL AUTO_INCREMENT;
cdb_crons
复制内容到剪贴板
代码:
ALTER TABLE `cdb_crons` CHANGE `cronid` `cronid` SMALLINT(6) UNSIGNED NOT NULL AUTO_INCREMENT;
cdb_forumlinks
复制内容到剪贴板
代码:
ALTER TABLE `cdb_forumlinks` CHANGE `id` `id` SMALLINT(6) UNSIGNED NOT NULL AUTO_INCREMENT;
cdb_forums
复制内容到剪贴板
代码:
ALTER TABLE `cdb_forums` CHANGE `fid` `fid` SMALLINT(6) UNSIGNED NOT NULL AUTO_INCREMENT;
cdb_medals
复制内容到剪贴板
代码:
ALTER TABLE `cdb_medals` CHANGE `medalid` `medalid` SMALLINT(6) UNSIGNED NOT NULL AUTO_INCREMENT;
cdb_members
复制内容到剪贴板
代码:
ALTER TABLE `cdb_members` CHANGE `uid` `uid` MEDIUMINT(8) UNSIGNED NOT NULL AUTO_INCREMENT;
cdb_pluginhooks
复制内容到剪贴板
代码:
ALTER TABLE `cdb_pluginhooks` CHANGE `pluginhookid` `pluginhookid` MEDIUMINT(8) UNSIGNED NOT NULL AUTO_INCREMENT;
cdb_plugins
复制内容到剪贴板
代码:
ALTER TABLE `cdb_plugins` CHANGE `pluginid` `pluginid` SMALLINT(6) UNSIGNED NOT NULL AUTO_INCREMENT;
cdb_pluginvars
复制内容到剪贴板
代码:
ALTER TABLE `cdb_pluginvars` CHANGE `pluginvarid` `pluginvarid` MEDIUMINT(8) UNSIGNED NOT NULL AUTO_INCREMENT;
cdb_pms
复制内容到剪贴板
代码:
ALTER TABLE `cdb_pms` CHANGE `pmid` `pmid` INT(10) UNSIGNED NOT NULL DEFAULT '0' AUTO_INCREMENT;
cdb_pmsearchindex
复制内容到剪贴板
代码:
ALTER TABLE `cdb_pmsearchindex` CHANGE `searchid` `searchid` INT(10) UNSIGNED NOT NULL DEFAULT '0' AUTO_INCREMENT;
cdb_posts
复制内容到剪贴板
代码:
ALTER TABLE `cdb_posts` CHANGE `pid` `pid` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT;
cdb_profilefields
复制内容到剪贴板
代码:
ALTER TABLE `cdb_profilefields` CHANGE `fieldid` `fieldid` SMALLINT(6) UNSIGNED NOT NULL AUTO_INCREMENT;
cdb_ranks
复制内容到剪贴板
代码:
ALTER TABLE `cdb_ranks` CHANGE `rankid` `rankid` SMALLINT(6) UNSIGNED NOT NULL AUTO_INCREMENT;
cdb_searchindex
复制内容到剪贴板
代码:
ALTER TABLE `cdb_searchindex` CHANGE `searchid` `searchid` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT;
cdb_smilies
复制内容到剪贴板
代码:
ALTER TABLE `cdb_smilies` CHANGE `id` `id` SMALLINT(6) UNSIGNED NOT NULL AUTO_INCREMENT;
cdb_styles
复制内容到剪贴板
代码:
ALTER TABLE `cdb_styles` CHANGE `styleid` `styleid` SMALLINT(6) UNSIGNED NOT NULL AUTO_INCREMENT;
cdb_stylevars
复制内容到剪贴板
代码:
ALTER TABLE `cdb_stylevars` CHANGE `stylevarid` `stylevarid` SMALLINT(6) UNSIGNED NOT NULL AUTO_INCREMENT;
cdb_templates
复制内容到剪贴板
代码:
ALTER TABLE `cdb_templates` CHANGE `templateid` `templateid` SMALLINT(6) UNSIGNED NOT NULL AUTO_INCREMENT;
cdb_threads
复制内容到剪贴板
代码:
ALTER TABLE `cdb_threads` CHANGE `tid` `tid` MEDIUMINT(8) UNSIGNED NOT NULL AUTO_INCREMENT;
cdb_threadtypes
复制内容到剪贴板
代码:
ALTER TABLE `cdb_threadtypes` CHANGE `typeid` `typeid` SMALLINT(6) UNSIGNED NOT NULL AUTO_INCREMENT;
cdb_usergroups
复制内容到剪贴板
代码:
ALTER TABLE `cdb_usergroups` CHANGE `groupid` `groupid` SMALLINT(6) UNSIGNED NOT NULL AUTO_INCREMENT;
cdb_words
复制内容到剪贴板
代码:
ALTER TABLE `cdb_words` CHANGE `id` `id` SMALLINT(6) UNSIGNED NOT NULL AUTO_INCREMENT;
================================

出现原因2:

数据重复所造成的.
用username_check将重复用户名处理掉(http://www.discuz.net/attachment.php?aid=29112
http://www.discuz.net/viewthread.php?tid=217574

[ 本帖最后由 asdf1999 于 2006-7-6 16:19 编辑 ]
本帖最近评分记录
  • lu5266 威望 +5 精品文章 2007-7-26 23:20
  • yanhuo168 威望 +1 好东西 www.ty68.cn 谢谢! 2007-5-14 12:43
  • liuqiang 威望 +1 精品文章 2006-8-16 19:27
  • liuqiang +3 精品文章 2006-8-16 19:27
自己再顶!
非常不错,谢谢agfx !
非常不错。 我也顶。 (我看不懂)
Forever Love!
사랑해
继续顶
厉害哟...收藏了..
凡事都要自己考虑以后再作判断,不要见得风就是雨!

厉害

[广告]: 购买官方虚拟主机,支持Discuz!发展 Discuz!官方主机,完美支持Discuz!论坛!
急我之所急,想我之所想,赞一个!!!!!!!!
okok!!!高手
发新话题
版块跳转