WIN10下php连接SQL Server数据库

时间:2024-04-01 18:16:24

、运行环境

Win10 64 +phpStudy+SQL Server 2012 R2数据库,phpStudy中的php版本是5.6.27-NTS,Apache版本是2.4.3。

这里使用phpStudy主要因为这个集成环境安装运行成功率高,配置相对简单,扩展功能和环境检测比较成熟,稳定性好,其他集成环境可以参考。

WIN10下php连接SQL Server2012数据库

WIN10下php连接SQL Server2012数据库

、PHP连接SQL Server配置要点

1、关键要点

php版本5.3以前版本:PHP扩展模块(php_mssql)+ODBC对应版本驱动;

php版本5.3以后版本:PHP连接SQLserver扩展模块php_sqlsrv_xx(版本)_nts_vc9.dll,php_pdo_sqlsrv_xx(版本)_nts_vc9.dll+ODBC对应版本驱动(必不可少);

2、php5.3以前版本配置

(1)打开php.ini,将;extension=php_mssql.dll前面的分号“;”去掉,然后重启 Apache。如果不行的话,进行第2步。

(2)检查一下你的php安装目录下的ext下面有没有php_mssql.dll存在,如果没有,从www.php.net重新下载一个php安装,要下载那个压缩包的才是最完整的。如果ext目录下已经有了php_mssql.dll,那么你需要打开php.ini,找到extension_dir = "./ext"
这一句(或者类似的,不一定是"./ext",查找"extension_dir"即可),然后把"./ext"修改为你的php安装目录的ext目录的完整路径,比如"c:/php/ext",或者"c:/program files/php/ext"这样。然后再次重启 Apache。如果还是不行的话,可能就需要第3步了。

(3)把 php 目录下的 ntwdblib.dll 和 php_mssql.dll 复制到 system32的系统目录中去,然后重起Apache。

(4)然后就可以连接SQL server,并进行一些操作了。

3、php5.3以及以后版本

3.1下载 PHP for SQL Server Driver。

官方下载地址:http://www.microsoft.com/en-us/download/details.aspx?id=20098,我使用的是SQLSRV3.2。对应版本如下图。

WIN10下php连接SQL Server2012数据库

3.2解压下载下来的文件,将php_pdo_sqlsrv_56_nts.dll文件和php_sqlsrv_56_nts.dll文件复制到php安装目录下的ext文件夹中。此处根据版本不同使用的文件不同,解压出来的扩展模块文件如下图。

WIN10下php连接SQL Server2012数据库

3.3在php.ini中添加

extension=php_pdo_sqlsrv_56_nts.dll

extension=php_sqlsrv_56_nts.dll

到很多;extension=***.dll语句后面,注意extension_dir 指向的位置是否正确。

3.4下载ODBC驱动程序

ODBC驱动必须要安装,不然会报错,连接不成功,试过多次才得出结论。

https://docs.microsoft.com/en-us/sql/connect/php/system-requirements-for-the-php-sql-driver?view=sql-server-2017

版本:Microsoft ODBC Driver 11 for SQL Server(版本与PHP版本以及上一步中扩展模块相对应)

WIN10下php连接SQL Server2012数据库

WIN10下php连接SQL Server2012数据库

完成驱动安装之后,重启phpStudy,最好系统也重新启动下,再使用探针查看支持情况。

WIN10下php连接SQL Server2012数据库

一开始查看的中文探针情况,显示是不支持,一直以为不成功。

WIN10下php连接SQL Server2012数据库

WIN10下php连接SQL Server2012数据库

WIN10下php连接SQL Server2012数据库

后面偶然用自带的phpinfo()函数写的探针查看,完美支持,到些环境配置成功。

3.5、PHP连接SQL Server DEMO

WIN10下php连接SQL Server2012数据库

3.6效果

WIN10下php连接SQL Server2012数据库

探针及DEMO代码请到这里下载:https://download.csdn.net/download/bernin/10584155