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

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[已解决] 求助:dv8.3转DX1时,会员转换时报错:字段值重复,入库失败

[复制链接]
着陆灯 发表于 2011-8-31 14:14:23 | 显示全部楼层 |阅读模式
本帖最后由 着陆灯 于 2011-9-5 15:58 编辑

dv8.3转DX1时,会员转换时报错:字段值重复,入库失败。

INSERT INTO mtl_dz.pre_ucenter_members (uid, username, password, email, myid, myidkey, regip, regdate, lastloginip, lastlogintime, salt, secques) VALUES ( '2', '事猫', '40eb26f8f79ab8105e004adee3c8e429', '', '', '', '', '1027180800', '125.121.199.201', '1027180800', 'fba7f7', '');
Error: Duplicate entry '' for key 2
Errormsg.: 字段值重复,入库失败
Errno.: 1062

说明一下:因为空间的原因,我用的是UTF8版(mysql也是utf8)

先是用关闭调试模式,会员只有21%转换成功。再用调试模式转换,则有上面这个错误提示。删除这条记录再转换也不行。

请高手告诉我:是哪个字段值重复?

在此表示感谢!

 楼主| 着陆灯 发表于 2011-8-31 14:23:53 | 显示全部楼层
不过,发现一个奇怪现象:

我查了这个表中有一条记录,但该记录的username字段是空的。其他的内容和报错中的值大致相同。是不是汉字不能写入该字段造成的?
回复

使用道具 举报

baxter 发表于 2011-8-31 14:49:42 | 显示全部楼层
是不是原数据有重复的数据呢?
回复

使用道具 举报

 楼主| 着陆灯 发表于 2011-8-31 14:57:13 | 显示全部楼层
谢谢baxter !

源数据库该表没有重复记录。而这里提示的是字段重复。这就很难说了。

源数据库中的这个表是有唯一关键字的,因此记录肯定不会有重复的。
回复

使用道具 举报

12153556 发表于 2011-8-31 19:50:27 | 显示全部楼层
转换时选择关闭调试模式试试,一般的就可以解决
回复

使用道具 举报

 楼主| 着陆灯 发表于 2011-8-31 23:33:26 | 显示全部楼层
楼上的这位你没看清我的帖子吗?
回复

使用道具 举报

 楼主| 着陆灯 发表于 2011-8-31 23:36:05 | 显示全部楼层
继续求助高手解答!谢谢!
回复

使用道具 举报

12153556 发表于 2011-9-1 00:23:09 | 显示全部楼层
打开转换程序,把INSERT INTO修改为:REPLACE INFO试试
回复

使用道具 举报

 楼主| 着陆灯 发表于 2011-9-1 11:06:43 | 显示全部楼层
如果你没遇到过此类问题并且已成功解决了,就请你不要误导我!
回复

使用道具 举报

12153556 发表于 2011-9-1 11:14:43 | 显示全部楼层
本帖最后由 12153556 于 2011-9-1 11:33 编辑
着陆灯 发表于 2011-9-1 11:06
如果你没遇到过此类问题并且已成功解决了,就请你不要误导我!

打开转换程序下的step_1.php 这个是转换程序的第一步(处理会员的)

搜索
  1. $query1        = getinsertsql("{$discuz_tablepre}ucenter_members", $fields1);
复制代码


替换为:
  1. $query1        = getinsertsql("{$discuz_tablepre}ucenter_members", $fields1 0);
复制代码
试试

操作前备份好相关文件


回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-1-10 21:05 , Processed in 0.025847 second(s), 3 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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