|  | 
 
| 论坛升级后,数据表 pre_common_member_count 可能出错没有更新,造成在线时间被清空。 现在我需要把2013.4.6 discuz 5.5论坛的members 这个表中的oltime 值加上 pre_common_member_count 中oltime 的值,应该就可以大致解决问题了。
 
 续:
 即将执行:
 1.如果现在的“在线时间”比4月6日少的,并且现在的“在线时间”<144 小时,将会把新旧两个“在线时间”相加。
 2.如果现在的“在线时间”比4月6日少的,并且现在的“在线时间”>144 小时,将会把旧时间+144小时。
 3.如果现在的“在线时间”比4月6日少的,维护不变(这个不用执行)
 
 
 这样可以保证你的积分不少于以前的。
 
 命令1
 命令2复制代码update pre_common_member_count,cdb_members set pre_common_member_count.oltime=pre_common_member_count.oltime+cdb_members.oltime where pre_common_member_count.uid=cdb_members.uid and pre_common_member_count.oltime < cdb_members.oltime and pre_common_member_count.oltime < 144;
经查,有可能是另外一个变量有问题,再测试复制代码update pre_common_member_count,cdb_members set pre_common_member_count.oltime=pre_common_member_count.oltime+144 where pre_common_member_count.uid=cdb_members.uid and pre_common_member_count.oltime < cdb_members.oltime and pre_common_member_count.oltime >=144;
复制代码update pre_common_onlinetime,cdb_onlinetime set pre_common_onlinetime.total=pre_common_onlinetime.total+8400 where pre_common_onlinetime.uid=cdb_onlinetime.uid and pre_common_onlinetime.total < cdb_onlinetime.total and pre_common_onlinetime.total >8400;
update pre_common_onlinetime,cdb_onlinetime set pre_common_onlinetime.total=pre_common_onlinetime.total+cdb_onlinetime.total where pre_common_onlinetime.uid=cdb_onlinetime.uid and pre_common_onlinetime.total < cdb_onlinetime.total and pre_common_onlinetime.total < 8400;
 | 
 |