当前位置: 首页 > 工具软件 > PHP SQLView > 使用案例 >

PHP连接SQLSERVER的心得体会

琴俊人
2023-12-01

PHP 连接 SQLSERVER的心得体会

(1)下载PHP驱动
     最高只有PHP7.0支持SQL2008 更高的PHP7.1不再支持SQL2008,所以我们只能使用PHP7.0
     从微软下载PHP的驱动,只能使用4.0版本的,更高的4.3版本的驱动可以支持7.1,但4.3版本不再支持SQL2008了
     https://docs.microsoft.com/zh-cn/sql/connect/php/microsoft-php-drivers-for-sql-server-support-matrix
     下载回来的SQLSRV40.EXE
     里面文件是的驱动文件,可以winrar解压出来,不需要安装的。
     文件分4种DLL文件,x86和X64位的,TS和NTS线程安全,拷到对应的版本中
     phpStudy 使用的是nts下的x86文件
     WAMP3.1.4 使用的是ts下的x64文件

(2)安装PHP驱动
     解压出来的文件放在目录下
     C:\phpStudy\PHPTutorial\php\php-7.0.12-nts\ext
     使用方法: C:\phpStudy\PHPTutorial\php\php-7.0.12-nts\php.ini 文件中第900行,增加2行
     extension=php_pdo_sqlsrv_7_nts_x86.dll
     extension=php_sqlsrv_7_nts_x86.dll
     
     经验:虽然操作系统是Win2008r2是64位的,但只能使用x86的DLL文件php_sqlsrv_7_nts_x86.dll
     切换使用x64文件总是失败,可能是phpStudy的问题,
     phpStudy使用服务模式没成功,切换到进程模式成功了
     
     检查成功失败的方法是打开 phpinfo.php文件,找到pdo节点可以看到
     PDO drivers  : mysql, sqlite, sqlsrv
     pdo_sqlsrv 说明加载dll成功

(3)  安装ODBC驱动 V13
     操作系统是Win2008r2是64位,安装X64的安装包。虽然使用的是php_sqlsrv_7_nts_x86.dll,但ODBC还是要装64位
     不要安装Microsoft ODBC Driver 17 for SQL Server 也不要安装V13.1
     https://docs.microsoft.com/zh-cn/sql/connect/odbc/download-odbc-driver-for-sql-server?view=sql-server-2017
     下载回来的msodbcsql.msi
     经验:如果不安装ODBC,仅安装php驱动4.0是不可以成功连上数据的。


杭州 fth  2018.12.10 深夜

 类似资料: