php连接sql server数据库(sqlsrv)完整解决方案

平生最烦的就是交接别人乱写的项目
一次性交接四五个半成熟项目我也是真心头大
最近老板让我交接了一个项目与工行e支付做对接,由于连接测试app频频出现问题,并且沟通成本比较大。甲方爸爸一怒之下要求直接上正式环境,于是出现了下面一系列心酸史

环境:windows server 2008;php5.5n;sql server 2008;IIS;

本文与大家分享一下关于php连接sql server数据库出现的一系列问题

下载安装sqlsrv扩展

下载地址:https://www.microsoft.com/en-us/download/details.aspx?id=20098

选择对应的php版本与操作系统版本

php连接sql server数据库(sqlsrv)完整解决方案_第1张图片
php连接sql server数据库(sqlsrv)完整解决方案_第2张图片

这里需要选择对应的php版本进行下载,对于第一次下载的小白来说……(通通下载^_^)
php连接sql server数据库(sqlsrv)完整解决方案_第3张图片

安装扩展

找到对应的sqlsrv扩展
例如:

php_sqlsrv_7_ts_x64.dll
php_pdo_sqlsrv_7_ts_x64.dll

将扩展拷贝到两处

  • php.ini中extension_dir所指定的文件中(一般为ext文件夹)
  • 系统所在盘的system32中

在php.ini中增加扩展连接(为了方便管理可以在在extension=php_mysql.dll 下面一行添加)

extension=php_sqlsrv_7_ts_x64.dll
extension=php_pdo_sqlsrv_7_ts_x64.dll

重启环境 phpinfo()输出

php连接sql server数据库(sqlsrv)完整解决方案_第4张图片

这种小问题难不倒我!让我们测试一下成果吧….

ODBC Driver 11 for SQL Server

php连接sql server数据库(sqlsrv)完整解决方案_第5张图片

emmmm

不难理解让我们下载安装ODBC(还好地址也给了,要不然我会真的崩溃的,难道这就乐极生悲吗^_^)

脑补了一下

对于SQL Server数据库来说,如果PHP >= 5.3以后,PDO_DBLIB是不能使用了的,但是可以使用PDO_ODBC来连接。

安安安,你说啥就是啥,都听你的…

SQLSTATE[08001]

SQLSTATE[08001]: [Microsoft][ODBC Driver 11 for SQL Server]TCP 提供程序: 由于目标计算机积极拒绝,无法连接

这个不要担心,只是用户名密码之类的值填写有问题

你可能感兴趣的:(WindowsServer)