
前段时间刚接触%ignore_a_1%的时候,第一次使用就出现了数据库表名大小写的问题。thinkphp默认是将所有大写改小写,并在中间加一个_符号。
后来自己通过修改源代码,能够正常运行了,但是时间太久忘记自己是怎么改的。这里只说解决方法,没有具体实现步骤。
出错代码:
select(); var_dump($a); die; $this->display(); }}
报错是这样的
立即学习“PHP免费学习笔记(深入)”;
1146:Table ‘MovierDC.praise’ doesn’t exist [ SQL语句 ] : SHOW COLUMNS FROM praise
在网上找到一个说法,修改配置项
'DB_PARAMS' => array(PDO::ATTR_CASE => PDO::CASE_NATURAL),
后来知道,都是一些人随便复制粘贴回答别人问题搞错了。这是一个配置表中字段不区分大小写的。
我查不到关于配置表名的配置项。所以我直接从源代码入手(重点看报错的地方),主要是两个函数,一个是将字母全部转换成小写字母的函数,一个是拆分重组的函数。将转换成小写的函数去掉,拆分重组的函数也去掉。最后能用了。
推荐教程:《TP5》
以上就是thinkphp无法识别数据表名大小写问题解决的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/90611.html
微信扫一扫
支付宝扫一扫