我之前遇到过将codeignier 2.xx升级到3.xx的问题,我找不到任何已完成的答案。所以我想分享一下我是如何解决它的。
在Codeignier官方网站上显示如何将PDO与Mysql连接如下
对于PDO驱动程序,您应该使用$ config ['dsn']设置 'hostname'和'database':
$ config ['dsn'] ='mysql:host = localhost; dbname = mydatabase'
https://www.codeigniter.com/user_guide/database/connecting.html
但我仍然无法正常工作,因为它显示错误
PDO子驱动程序无效或不存在
某个网站显示了如何通过将其添加到主机名
来解决此问题$ db ['默认'] ['主机名'] =' mysql:host = localhost&#39 ;;
但我仍然有错误
错误号码:3D000 / 1046
未选择数据库
答案 0 :(得分:6)
我花了一些时间来调试一段时间我发现一旦选择了dbdriver到' pdo' Codeigniter检查来自$ db ['默认'] ['主机名']的dsn详细信息 $ db ['默认'] [' dns']包括数据库名称,如下所示。
$ db ['默认'] ['主机名'] = ' MySQL的:主机=本地主机; DBNAME = MY_DATABASE&#39 ;;
我希望这对任何人都有可能像我的错误一样有帮助。
答案 1 :(得分:4)
我的配置:
'dsn' => 'mysql:host=localhost;dbname=codeigniter3',
'dbdriver' => 'pdo'