Thinkphp table doesn't exist

系统采用Tp3.2的改造....集群为Mysql双工模式:
平时M()主要是操作写,MS操作读。。。今天在查询

$res =MS("user u")->join("{$per}user_info x ON x.uid = u.id")->where("u.id = $uid")->find();
var_dump($res);//false

始终为false.....而通过getLastSql输出的原生sql后:M()->query('sql 语句');返回有记录集。。。
猜测是mysql错误,于是:

$res =MS("user u")->join("{$per}user_info x ON x.uid = u.id")->where("u.id = $uid")->find();
var_dump($res);//false
if(false === $res ){  
    echo MS("user u")->getDbError();   //输出Table 'user_info' doesn't exist
}  

CURD操作如果返回值为false,则表示数据库操作发生错误,这个时候就需要使用模型的getDbError方法来查看数据库返回的具体错误信息。
由此看来,问题就在集群数据表同步问题上(服务器集群是innodb,user_info是Myisam,问题可能就在这里).......统一改成M(读写方式)解决OK......
也希望大家每天都有一点点成果,每天都有一点点进步。






转载于:https://www.cnblogs.com/phpper/p/7679429.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值