相关疑难解决方法(0)

在windows下使用sqlsrv数据库Laravel迁移找不到驱动

我在我的项目中使用sqlsrv 数据库连接,因为我需要连接到 Microsoft SQL 数据库。

我已经成功安装了sqlsrv 驱动程序,因为我可以连接到数据库来检索数据。

但是当我尝试进行 Laravel 迁移时,它显示了一个错误:

Illuminate\Database\QueryException  : could not find driver (SQL: select * from sysobjects where type = 'U' and name = migrations)
Run Code Online (Sandbox Code Playgroud)

下面是我的 .env

DB_CONNECTION=sqlsrv
DB_HOST=**********.database.windows.net
DB_PORT=1433
DB_DATABASE=****************_4cd1_9d18_2a7d9ddbcd13
DB_USERNAME=***************_4cd1_9d18_2a7d9ddbcd13_ExternalWriter
DB_PASSWORD=***************
Run Code Online (Sandbox Code Playgroud)

配置文件

extension=php_xmlrpc.dll
extension=php_xsl.dll
extension=php_pdo_sqlsrv_7_nts_x64.dll
extension=php_pdo_sqlsrv_7_nts_x86.dll
extension=php_pdo_sqlsrv_7_ts_x64.dll
extension=php_pdo_sqlsrv_7_ts_x86.dll
extension=php_pdo_sqlsrv_71_nts_x64.dll
extension=php_pdo_sqlsrv_71_nts_x86.dll
extension=php_pdo_sqlsrv_71_ts_x64.dll
extension=php_pdo_sqlsrv_71_ts_x86.dll


extension=php_sqlsrv_7_nts_x64.dll
extension=php_sqlsrv_7_nts_x86.dll
extension=php_sqlsrv_7_ts_x64.dll
extension=php_sqlsrv_7_ts_x86.dll
extension=php_sqlsrv_71_nts_x64.dll
extension=php_sqlsrv_71_nts_x86.dll
extension=php_sqlsrv_71_ts_x64.dll
extension=php_sqlsrv_71_ts_x86.dll
Run Code Online (Sandbox Code Playgroud)

migration odbc laravel sqlsrv

4
推荐指数
1
解决办法
1万
查看次数

Laravel SQL Server 连接 ENCRYPT=yes trustServerCertificate=true

我有一个运行 php 5.5.9、laraverl 5.2 的 ubuntu docker 容器,它可以成功连接到 SQL Server 并获取结果。

我使用的docker镜像是https://hub.docker.com/r/h2labs/laravel-mssql/

我遇到的问题是服务器使用加密,我找不到如何将以下参数传递给 mssql 的 laravel 连接字符串

ENCRYPT=yes;trustServerCertificate=true
Run Code Online (Sandbox Code Playgroud)

我的 SQL Server 连接字符串目前看起来像这样

DB_CONNECTION=sqlsrv
DB_HOST=sql.mydomain.com
DB_PORT=1433
DB_DATABASE=mydbname
DB_USERNAME=mysusername
DB_PASSWORD=mypass
Run Code Online (Sandbox Code Playgroud)

我的 laravel 数据库配置如下所示

        'sqlsrv' => [
        'driver' => 'sqlsrv',
        'host' => env('DB_HOST', 'localhost'),
        'database' => env('DB_DATABASE', 'forge'),
        'username' => env('DB_USERNAME', 'forge'),
        'password' => env('DB_PASSWORD', ''),
        'charset' => 'utf8',
        'prefix' => '',
    ],
Run Code Online (Sandbox Code Playgroud)

SQL Server 错误日志条目是

连接到该服务器需要加密,但客户端库不支持加密;连接已关闭。请升级您的客户端库。[客户端:103.31.114.56]

sql sql-server laravel

1
推荐指数
1
解决办法
1万
查看次数

标签 统计

laravel ×2

migration ×1

odbc ×1

sql ×1

sql-server ×1

sqlsrv ×1