Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[疑问] Dvbbs8.2 SQL转Discuz!7.1,第一步就出错:字段值重复,入库失败

[复制链接]
xxf_cz 发表于 2009-11-23 19:19:48 | 显示全部楼层 |阅读模式
本帖最后由 xxf_cz 于 2009-12-22 09:49 编辑

此贴过期
Dvbbs8.2 SQL转Discuz!7.1,第一步就出错:

XConvert info: MySQL Query Error

Time: 2011-1-13 9:11pm
SQL: INSERT INTO ucenter.uc_members (uid, username, password, email, myid, myidkey, regip, regdate, lastloginip, lastlogintime, salt, secques) VALUES ( '271099', 'dicky12345', '7eabb8f0065887850adcd8e0de627539', '123FSG@TOM.COM', '', '', '59.41.37.132', '1147768020', '59.41.37.132', '1147768020', '2b8d57', '');
Error: Duplicate entry '271099' for key 1
Errormsg.: 字段值重复,入库失败
Errno.: 1062

该错误的出现,我猜是有一点背景的,就是此前的转换过程中,如果因为别的原因而中断过,然后接下去进行“断点续转”的话,就可能出这种问题。

经查,源数据库的表Dv_User中 UserID=271099的只有一条记录,UserName='dicky12345'的也只有同一条记录;另查,目标数据库中,uc_members当前最大的uid=271098,其自动生成的下一个值也正好是271099。不过没有进一步查uc_members的username字段了,因为提示信息表明“Duplicate entry '271099' for key 1”。

搜遍百度和Google,为保持源库和目标库用户ID一致,最后采用一招:重新转换此步骤。
现在正等着看结果。目前已经转换到用户ID 253715了,还没出任何错误。
此贴过期
蓝豆 发表于 2009-11-23 19:51:54 | 显示全部楼层
有问题可以继续提出
回复

使用道具 举报

桃子(小敏) 发表于 2009-11-24 10:33:31 | 显示全部楼层
回复

使用道具 举报

 楼主| xxf_cz 发表于 2009-11-27 09:48:27 | 显示全部楼层
最近发现还有一个更好的解决办法:自定义断点续传。

在数据库中查看出错的表,找出其主键的最大值,这是当前已转换的最大记录。加1后,改造转换页面的地址:

出错的地址:http://domain.com/converter/index.php?action=convert&step=3&start=837001&stay=0&totalrows=796627&convertedrows=796627&maxid=967381

当前最大ID:858000

新地址:http://domain.com/converter/index.php?action=convert&step=3&start=858001&stay=0&totalrows=796627&convertedrows=796627&maxid=967381

然后使用这个新地址继续转换,可保无虞。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-11-21 01:45 , Processed in 0.017911 second(s), 4 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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