Discuz 7.2 用户更改UID的方法
本帖最后由 灰儿 于 2010-5-15 14:34 编辑今天我的坛子里有个会员被误删除了,重新注册后发现UID不能设置成以前的数字了。官方并没有给出解决办法,
以下是网上搜到的一个方法:
由于discuz7.0版本并不提供后台会员合并功能,修改会员uid只能从数据库着手。
主要需要3部分内容
第一,ucenter中心,这个比较简单。
只要修改ucenter_members和ucenter_memberfields这2个数据表中的uid就可以了,速度比较快。
第二,discuz7.0论坛数据库修改,比较复杂,设计的数据表比较多。
粗略的查看了下有以下数据表需要修改,各位如果有补充的,请回帖或者联系我啊。
discuz_attachments
discuz_forumrecommend
discuz_members
discuz_memberfields
discuz_membermagics
discuz_moderators
discuz_modworks
discuz_myposts
discuz_mythreads
discuz_onlinetime
discuz_posts
discuz_ratelog
discuz_threadsmod
上述数据表需要修改authorid或者uid为一希望的数字id就可以了。
第三,其他程序的修改,比如home等,只要通过ucenter中心作为passport的客户端,激活过账号的都需要修改,这里就不多说了。
以上方法我试了,成功了,但如果是新注册的会员改UID的话,就没必要上边的所有表都看一遍了,我认为改discuz的members和UC里的members表就OK了,因为新用户还没有在其他地方产生数据。
附:
首先要确保目的UID(将要改成的那个)是没有的(或已删除),还有一个是原UID(将要更改的那个)。如果自己UC前缀是uc_并且论坛前缀是cdb_,如将UID为5的改成UID是3,大家按照自己想要的将下面代码中的所有数字5,替换成自己原UID,然后在DZ7后台的数据库升级那里执行以下代码,也可以在TOOL工具箱那里升级。
UPDATE `cdb_access` SET `uid`=3 WHERE `uid`=5;
UPDATE `cdb_adminsessions` SET `uid`=3 WHERE `uid`=5;
UPDATE `cdb_banned` SET `id`=3 WHERE `id`=5;
UPDATE `cdb_creditslog` SET `uid`=3 WHERE `uid`=5;
UPDATE `cdb_favorites` SET `uid`=3 WHERE `uid`=5;
UPDATE `cdb_memberfields` SET `uid`=3 WHERE `uid`=5;
UPDATE `cdb_members` SET `uid`=3 WHERE `uid`=5;
UPDATE `cdb_moderators` SET `uid`=3 WHERE `uid`=5;
UPDATE `cdb_modworks` SET `uid`=3 WHERE `uid`=5;
UPDATE `cdb_onlinetime` SET `uid`=3 WHERE `uid`=5;
UPDATE `cdb_orders` SET `uid`=3 WHERE `uid`=5;
UPDATE `cdb_paymentlog` SET `uid`=3 WHERE `uid`=5;
UPDATE `cdb_posts` SET `authorid`=3 WHERE `authorid`=5;
UPDATE `cdb_promotions` SET `uid`=3 WHERE `uid`=5;
UPDATE `cdb_ratelog` SET `uid`=3 WHERE `uid`=5;
UPDATE `cdb_threads` SET `authorid`=3 WHERE `authorid`=5;
UPDATE `cdb_threadsmod` SET `uid`=3 WHERE `uid`=5;
UPDATE `cdb_validating` SET `uid`=3 WHERE `uid`=5;
UPDATE `uc_members` SET `uid`=3 WHERE `uid`=5;
UPDATE `uc_pms` SET `msgtoid`=3 WHERE `msgtoid`=5;
UPDATE `uc_pms` SET `msgfromid`=3 WHERE `msgfromid`=5;
UPDATE `uc_members` SET `uid`=3 WHERE `uid`=5;
UPDATE `uc_memberfields`SET `uid`=3 WHERE `uid`=5;
UPDATE `uc_friends`SET `uid`=3 WHERE `uid`=5;
UPDATE `uc_friends`SET `friendid`=3 WHERE `friendid`=5;
UPDATE `uchome_userapp`SET `uid`=3 WHERE `uid`=5;
UPDATE `uchome_spacefield` SET `uid`=3 WHERE `uid`=5;
UPDATE `uchome_space` SET `uid`=3 WHERE `uid`=5;
UPDATE `uchome_session` SET `uid`=3 WHERE `uid`=5;
UPDATE `uchome_pic` SET `uid`=3 WHERE `uid`=5;
UPDATE `uchome_notification` SET `uid`=3 WHERE `uid`=5;
UPDATE `uchome_myinvite` SET `touid`=3 WHERE `touid`=5;
UPDATE `uchome_member` SET `uid`=3 WHERE `uid`=5;
UPDATE `uchome_friend` SET `uid`=3 WHERE `uid`=5;
UPDATE `uchome_friend` SET `fuid`=3 WHERE `fuid`=5;
UPDATE `uchome_feed` SET `uid`=3 WHERE `uid`=5;
UPDATE `uchome_comment` SET `authorid`=3 WHERE `authorid`=5;
UPDATE `uchome_comment` SET `uid`=3 WHERE `uid`=5;
UPDATE `uchome_comment` SET `id`=3 WHERE `id`=5;
UPDATE `uchome_album` SET `uid`=3 WHERE `uid`=5;
UPDATE `cdb_ratelog` SET `uid`=3 WHERE `uid`=5;
UPDATE `cdb_mythreads` SET `uid`=3 WHERE `uid`=5;
UPDATE `cdb_mytasks` SET `uid`=3 WHERE `uid`=5;
UPDATE `cdb_myposts` SET `uid`=3 WHERE `uid`=5;
UPDATE `cdb_medallog` SET `uid`=3 WHERE `uid`=5;
UPDATE `cdb_attachments` SET `uid`=3 WHERE `uid`=5;
页:
[1]