首页 > 解决方案 > 找不到驱动程序 sqlsrv PHP 8.0.1

问题描述

我目前正在尝试启用 pdo_sqlsrv 扩展。

我从这里下载了驱动程序:https ://docs.microsoft.com/en-us/sql/connect/php/download-drivers-php-sql-server?view=sql-server-ver15

然后将它们添加到文件夹 php/ext/

之后,我将以下行添加到 php.ini

extension=php_sqlsrv_72_ts.dll

错误日志向我显示以下内容:

[12-Jan-2021 16:06:23 UTC] PHP Warning:  PHP Startup: Unable to load dynamic library 'php_sqlsrv_72_ts.dll' (tried: C:\php\ext\php_sqlsrv_72_ts.dll (Impossível localizar o módulo especificado), C:\php\ext\php_php_sqlsrv_72_ts.dll.dll (Impossível localizar o módulo especificado)) in Unknown on line 0

我已经尝试过也只需添加以下行:

extension=php_pdo_sqlsrv

错误日志文件显示:

[12-Jan-2021 16:17:55 UTC] PHP Warning:  PHP Startup: Unable to load dynamic library 'php_pdo_sqlsrv' (tried: C:\php\ext\php_pdo_sqlsrv (Impossível localizar o módulo especificado), C:\php\ext\php_php_pdo_sqlsrv.dll (Impossível localizar o módulo especificado)) in Unknown on line 0

注意:我在 IIS 中使用 PHP。pdo_odbc 等其他驱动程序也可以工作。我只有这个问题。

根据评论的建议后:

我从以下链接安装了驱动程序:pecl.php.net/package/pdo_sqlsrv/5.9.0beta2/windows

添加到 php.ini

extension=pdo_sqlsrv

并且错误日志文件仍然显示找不到模块:

[12-Jan-2021 20:59:17 UTC] PHP Warning:  PHP Startup: Unable to load dynamic library 'pdo_sqlsrv' (tried: C:\php\ext\pdo_sqlsrv (Impossível localizar o módulo especificado), C:\php\ext\php_pdo_sqlsrv.dll (Impossível localizar o módulo especificado)) in Unknown on line 0

标签: phpsql-serveriissqlsrv

解决方案


根据我在 PHP 8 发布后阅读的内容,pdo_sqlsrv 的 dll 扩展要到 1 月底才会发布。当 7.4 推出时我遇到了同样的问题,我不得不等待几个月才能为我们的 Windows 服务器发布适当的 dll。如果我发现它已发布,我会尽量记住回来更新链接。


推荐阅读