Illuminate\Database\QueryException 找不到驱动程序

Posted

技术标签:

【中文标题】Illuminate\\Database\\QueryException 找不到驱动程序【英文标题】:Illuminate\Database\QueryException could not find driver [duplicate]Illuminate\Database\QueryException 找不到驱动程序 【发布时间】:2020-12-26 06:12:55 【问题描述】:

Illuminate\Database\Connection::runQueryCallback C:\wamp\www\LaravelProject\vendor\laravel\framework\src\Illuminate\Database\Connection.php:671

错误:

照亮\数据库\查询异常 SQLSTATE [42S02]:未找到基表或视图:1146 表 'db_laravel.registers' 不存在(SQL:插入registersnameemailupdated_atcreated_at)值( dfmgkm, kmfgk, 2020-09-08 04:56:41, 2020-09-08 04:56:41))

“由于连接失败,我无法向 mysql 插入值,这是 Connection.php 文件中的错误,但我的迁移成功”

DB_CONNECTION=mysql

DB_HOST=127.0.0.1

DB_PORT=3306

DB_DATABASE=db_laravel

protected function runQueryCallback($query, $bindings, Closure $callback)



    try 

        $result = $callback($query, $bindings);

    

    catch (Exception $e) 

        throw new QueryException(

            $query, $this->prepareBindings($bindings), $e

        );

    



    return $result;


【问题讨论】:

您得到的完整错误是什么?以及.env文件中DB_CONNECTION的值是什么 Illuminate\Database\QueryException SQLSTATE[42S02]:未找到基表或视图:1146 表 'db_laravel.registers' 不存在(SQL:插入registersname,@ 987654331@, updated_at, created_at) 值 (dmf, ldfmgk, 2020-09-08 05:38:45, 2020-09-08 05:38:45)) DB_CONNECTION=mysql 检查registers 表是否存在于您的数据库和迁移文件中,如果表名没有拼写错误。 【参考方案1】:

尝试这样做

composer update

composer require doctrine/dbal

【讨论】:

你提示的这两件事我都做了,但是又出现了错误,没有清除。【参考方案2】:

这发生在我从 php8.0 升级到 php8.1 之后。解决方案是为较新版本安装 php 扩展。就我而言:

sudo apt install php8.1-imagick,bz2,curl,gd,mysql,opcache,xml

在你的情况下,你可能只需要

sudo apt install phpX.X-mysql

X.X 是你的 php 版本

【讨论】:

以上是关于Illuminate\Database\QueryException 找不到驱动程序的主要内容,如果未能解决你的问题,请参考以下文章

Laravel 查询错误 - 调用未定义的方法 Illuminate\Database\Query\Builder::query()

调用未定义的方法 Illuminate\Database\Query\Builder::when()

BadMethodCallException : 方法 Illuminate\Database\Query\Builder::offers 不存在

Laravel:调用未定义的方法 Illuminate\\Database\\Query\\Builder

调用未定义的方法 Illuminate\Database\Query\Builder::unique()

“使用 Laravel 调用未定义的方法 Illuminate\\Database\\Query\\Builder::users() [关闭]