返回列表 发帖
查看: 610|回复: 2

[已解决] UTF8 X3.4升X3.5错误

6

主题

25

回帖

38

积分

初学乍练

贡献
0 点
金币
5 个
发表于 2022-12-25 23:02:59 | 显示全部楼层 |阅读模式
升级到X3.5的数据库因操作失误被覆盖了,重新还原到X3.4再升级时出错了,如下:
Discuz!Database Error
(1062) Duplicate entry '' for key 'username'
ALTER TABLE common_member_archive CONVERT TO CHARACTER SET utf8mb4COLLATE utf8mb4_unicode_ci;
PHP Debug
  
No.
  
  
File
  
  
Line
  
  
Code
  
  
1
  
  
install/update_adult.php
  
  
411
  
  
discuz_database::query(%s)
  
  
2
  
  
source/class/discuz/discuz_database.php
  
  
142
  
  
db_driver_mysqli->query(%s,  false, false)
  
  
3
  
  
source/class/db/db_driver_mysqli.php
  
  
147
  
  
db_driver_mysqli->halt(%s,  %d, %s)
  
  
4
  
  
source/class/db/db_driver_mysqli.php
  
  
222
  
  
break()
  
如果您是站长,建议您尝试在管理中心 更新缓存 ,您也可通过 Discuz! 官方站 寻求帮助。如果您确定这是一个程序自身Bug,您也可以直接 提交Issue 给我们
bbs.myptfe.com 已经将此出错信息详细记录, 由此给您带来的访问不便我们深感歉意

1 贡献

最佳答案

进入数据库,执行语句:
select uid from pre_ucenter_members where username in (select username from pre_ucenter_members group by convert(username using utf8mb4) collate utf8mb4_unicode_ci having count(1) > 1)
再将异常用户改名
,如果UC表查询无异常,上述语句中表名可以更换为(pre_common_member_archive)
回复

使用道具 举报

18

主题

3715

回帖

6881

积分

应用开发者

贡献
325 点
金币
1397 个
QQ
发表于 2022-12-26 11:00:37 | 显示全部楼层
用户存档表存在异常用户名,需要先处理
回复 支持 反对

使用道具 举报

18

主题

3715

回帖

6881

积分

应用开发者

贡献
325 点
金币
1397 个
QQ
发表于 2022-12-26 11:03:21 | 显示全部楼层
进入数据库,执行语句:
select uid from pre_ucenter_members where username in (select username from pre_ucenter_members group by convert(username using utf8mb4) collate utf8mb4_unicode_ci having count(1) > 1)
再将异常用户改名
,如果UC表查询无异常,上述语句中表名可以更换为(pre_common_member_archive)
回复 支持 反对

使用道具 举报

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

本版积分规则

  • 关注公众号
  • 有偿服务微信
  • 有偿服务QQ

手机版|小黑屋|Discuz! 官方交流社区 ( 皖ICP备16010102号 |皖公网安备34010302002376号 )|网站地图|star

GMT+8, 2024-3-29 23:48 , Processed in 0.048547 second(s), 8 queries , Redis On.

Powered by Discuz! W1.0 Licensed

Cpoyright © 2001-2024 Discuz! Team.

关灯 快速发帖
有偿服务QQ
有偿服务微信
返回顶部
快速回复 返回顶部 返回列表