首页 > 解决方案 > 带有 SQLite 迁移错误的 Laravel

问题描述

当我尝试运行时php artisan migrate,出现以下错误

Connection.php line 664:                                                                                                                                                                               
could not find driver (SQL: select * from sqlite_master where type = 'table' and name = migrations) 

PDOConnection.php line 31:                                                                                                                                                                             
could not find driver                                                                                                                                                                                   

PDOConnection.php line 27:                                                                         
could not find driver                                                                               

当我尝试加载 Laravel(仅用于测试与数据库的连接)时,出现以下错误

SQLSTATE[HY000]: General error: 1 no such table: options (SQL: select * from "options" where "key" = live_stream limit 1)

我的 .env 配置是

DB_CONNECTION=sqlite
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=d:\www\dma-laravel\database\database.sqlite3
DB_USERNAME=root
DB_PASSWORD=

我已经通过外部测试测试了我的系统连接到数据库文件的能力,并且我的系统可以打开问题没有问题。

通过查看 Laravel 和 PHP Artisan 的两个不同错误,在我看来,Laravel 正在查看并尝试毫无问题地打开数据库。但是,PHP Artisan 无法连接到数据库。

我错过了什么?有什么想法或建议吗?

标签: laravelsqlite

解决方案


您的 PHP 命令行二进制文件可能与您在网络服务器中使用的 PHP 不同。这是一个常见的问题。您的系统上可以有多个 PHP 版本。

一个快速的解决方案是在命令行上安装 PHP 版本的 SQLite PHP 驱动程序。

如果你想在命令行上使用不同的 PHP 版本,那么改变它取决于你的操作系统和你安装 PHP 的方式。


推荐阅读