【发布时间】:2017-11-08 18:58:51
【问题描述】:
我在尝试连接到 PostgreSQL 数据库时收到“找不到驱动程序”PDO 异常,但我似乎无法弄清楚发生了什么。以下是系统规格:
WampServer 版本 3.0.3 64 位
PHP 7.1.10
阿帕奇 2.4.9
Laravel 5.5
我从这里下载了 PosgtreSQL 10 (Windows x86-64) - EnterpriseDB
以下是所有相关截图:
extension_loaded('pgsql')
返回真
我看到的唯一差异是我下载了 PostgreSQL 10,而 PHP Info 显示 PostgreSQL(libpq) 版本是 9.6.2。这可能是个问题吗?
编辑:
我将 PostgreSQL 10 替换为 9.6.5(这是唯一可用的 9.6 版本),但并没有解决问题。
编辑 2:
$dbh = new PDO("pgsql:dbname=laravel_admin_api;host=127.0.0.1", "postgres", "admin");
echo $dbh ? "connected" : "failed";
返回connected。所以这一定是 Laravel 的问题?
编辑 3:
好的,所以到数据库的连接工作了,我创建了一个表并通过pgAdmin手动插入了一行,然后调用
\App\User::all()->toArray()
这很奏效。所以实际上是php artisan migrate 有问题,并抛出could not find driver 异常。仍然难倒那个。
【问题讨论】:
-
您的迁移是什么样的?
-
Laravel 附带的默认 2 个迁移(用户和迁移表)。切换到mysql或者sqlite都没有问题。
-
几点:WampServer的最新版本是3.1.0,最好将WAMPServer安装到驱动器的根目录中,而不是安装到
Program Files
标签: postgresql wamp laravel-5.5 php-7.1 php-pgsql