微米社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 420|回复: 0

解决X3.2 QQ互联登陆出现(1054) Unknown column 'conuintoken' in 'field...

[复制链接]

签到天数: 3 天

[LV.2]偶尔看看I

27

主题

28

帖子

224

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
224
发表于 2017-8-21 10:34:26 | 显示全部楼层 |阅读模式
最近在官方看到很多人说安装X3.1后QQ互联登陆出现(1054) Unknown column 'conuintoken' in 'field list',具体截图如下:


其实这个问题x3.1发布当天我就测试了新版本的,就发现了这个问题,其实这只是个小问题而已,所以官方在让我们找bug嘛。
其实这个问题就是数据表里少了一个字段。
看下错误代码:
(1054) Unknown column 'conuintoken' in 'field list
UPDATE common_member_connect SET `conuintoken`='4866612C1C0E76EF744AD92AB5F7F059' , `conopenid`='6114C6C27E15656939C3ABBEE70E6E37' , `conisfeed`='1' WHERE `uid`='1'


在你用QQ登陆的时候是把你的账号信息写入数据表common_member_connect中的,而这个语句中有conuintoken这个字段,但数据表common_member_connect里面却没有,所以报错,这可能是dz的童鞋们小小的疏忽。

*********************************好了,我们现在就来解决吧******************************
其实说了上面的,只要稍微懂数据库操作的童鞋应该都会了,其实如果懂数据库的看下报错就知道哪里出问题了。但是用dz的很多童鞋自以为知道很多,其实技术一窍不通,那么我就一口一口来喂吧。方法一:后台运行SQL
1、修改config/config_global.php文件查找下面代码把0改为1,开启后台直接运行SQL
  • $_config['admincp']['runquery'] = '0';

[color=rgb(51, 102, 153) !important]复制代码

2、在后台后台——站长——数据库——升级,粘贴以下代码提交:
  • alter table  pre_common_member_connect add   conuintoken  char(32) not null;
  • alter table pre_common_connect_guest add   conuintoken  char(32) not null;

[color=rgb(51, 102, 153) !important]复制代码

--如果数据表前缀不是默认的pre,请改为相应的表前缀


方法二:数据库里边修改(不想碰数据库无视这个)
大家用mysql管理工具(其实大家基本上用PMA,其他可能都没听过,呵呵)。找到你的数据库,找到表common_member_connect
查看表信息是:
ield             Type                   Collation       Null    Key     Default  Extra   Privileges                       Comment  
----------------  ---------------------  --------------  ------  ------  -------  ------  -------------------------------  ---------
uid               mediumint(8) unsigned  (NULL)          NO      PRI     0                select,insert,update,references           
conuin            char(40)               gbk_chinese_ci  NO      MUL                      select,insert,update,references           
conuinsecret      char(16)               gbk_chinese_ci  NO                               select,insert,update,references           
conopenid         char(32)               gbk_chinese_ci  NO      MUL                      select,insert,update,references           
conisfeed         tinyint(1) unsigned    (NULL)          NO              0                select,insert,update,references           
conispublishfeed  tinyint(1) unsigned    (NULL)          NO              0                select,insert,update,references           
conispublisht     tinyint(1) unsigned    (NULL)          NO              0                select,insert,update,references           
conisregister     tinyint(1) unsigned    (NULL)          NO              0                select,insert,update,references           
conisqzoneavatar  tinyint(1) unsigned    (NULL)          NO              0                select,insert,update,references           
conisqqshow       tinyint(1) unsigned    (NULL)          NO              0                select,insert,update,references  
看看上面的字段是不是少了conuintoken?
那么我们加上conuintoken吧,sql语句为
  • alter table pre_common_member_connect add conuintoken char(32) not null;

[color=rgb(51, 102, 153) !important]复制代码

执行上面的sql语句即可,如果是在全局执行,请加上数据库名,比如数据库名为db,则pre_common_member_connect应为db.pre_common_member_connect
下面再看下表信息:
Field             Type                   Collation                   Null    Key     Default  Extra   Privileges                       Comment  
----------------  ---------------------  --------------         ------  ------  -------  ------  -------------------------------  ---------
uid               mediumint(8) unsigned  (NULL)          NO      PRI     0                select,insert,update,references           
conuin            char(40)               gbk_chinese_ci     NO      MUL                      select,insert,update,references           
conuinsecret      char(16)               gbk_chinese_ci  NO                               select,insert,update,references           
conopenid         char(32)               gbk_chinese_ci  NO      MUL                      select,insert,update,references           
conisfeed         tinyint(1) unsigned    (NULL)             NO              0                select,insert,update,references           
conispublishfeed  tinyint(1) unsigned    (NULL)          NO              0                select,insert,update,references           
conispublisht     tinyint(1) unsigned    (NULL)            NO              0                select,insert,update,references           
conisregister     tinyint(1) unsigned    (NULL)          NO              0                select,insert,update,references           
conisqzoneavatar  tinyint(1) unsigned    (NULL)          NO              0                select,insert,update,references           
conisqqshow       tinyint(1) unsigned    (NULL)          NO              0                select,insert,update,references           
conuintoken      char(32)             gbk_chinese_ci        NO            (NULL)           select,insert,update,references   
最后红色部分就是我们那天sql语句执行增加的,当然也可以直接用数据库操作工具添加,不用写sql,但这个sql很简单。
另外一个同样的道理
回复

使用道具 举报

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

本版积分规则

QQ|Archiver|手机版|小黑屋|微米社区 ( 浙ICP备08000826号-2|网站地图

GMT+8, 2019-10-24 05:56 , Processed in 0.071297 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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