我需要你的帮助,我在将表迁移到sql server数据库时遇到了问题,我已经在php/ext文件夹中添加了驱动程序,但是当迁移总是失败时,我不会忘记更改php.ini文件并添加扩展名:php_pdo_sqlsrv.dll,但它仍然无法迁移请帮助
命令输出:
PDO::__construct()
PS D:\kerja\INDOPRIMA\ERP\erpindowire> php artisan migrate
PHP Warning: PHP Startup: Unable to load dynamic library 'php_pdo_sqlsrv' (tried: C:/Bitnami/wappstack-7.4.8-0/php/ext\php_pdo_sqlsrv (The specified module could not be found.), C:/Bitnami/wappstack-7.4.8-0/php/ext\php_php_pdo_sqlsrv.dll (The specified module could not be found.)) in Unknown on line 0
PHP Warning: PHP Startup: Unable to load dynamic library 'php_sqlsrv.dll' (tried: C:/Bitnami/wappstack-7.4.8-0/php/ext\php_sqlsrv.dll (The specified module could not be found.), C:/Bitnami/wappstack-7.4.8-0/php/ext\php_php_sqlsrv.dll.dll (The specified module could not be found.)) in Unknown on line 0发布于 2021-07-02 17:02:27
这里的问题是,php没有在ext文件夹中找到你的扩展名,它会在其他所有php命令中显示该消息,而不仅仅是Laravel命令。
根据您的上一条评论,您使用了错误的语法来加载扩展。
首先,确保您的扩展文件夹中同时包含php_pdo_sqlsrv.dll和php_sqlsrv.dll。
最后,将您声明扩展的方式更改为:
extension=sqlsrv
extension=pdo_sqlsrv注意:php_sqlsrv.dll也可以工作,但不能使用php_sqlsrv或sqlsrv.dll。
从php.ini文件的注释中:
; If you wish to have an extension loaded automatically, use the following
; syntax:
;
; extension=modulename
;
; For example:
;
; extension=mysqli
;
; When the extension library to load is not located in the default extension
; directory, You may specify an absolute path to the library file:
;
; extension=/path/to/extension/mysqli.so
;
; Note : The syntax used in previous PHP versions ('extension=<ext>.so' and
; 'extension='php_<ext>.dll') is supported for legacy reasons and may be
; deprecated in a future PHP major version. So, when it is possible, please
; move to the new ('extension=<ext>) syntax.
;https://stackoverflow.com/questions/68221351
复制相似问题