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版本进行下载,对于第一次下载的小白来说……(通通下载^_^)
这里写图片描述

安装扩展

找到对应的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()输出

这里写图片描述

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

ODBC Driver 11 for SQL Server

这里写图片描述

emmmm

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

脑补了一下

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

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

SQLSTATE[08001]

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

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

猜你喜欢

转载自blog.csdn.net/angus_01/article/details/80340662