Windows平台实现PHP连接SQL Server2008的方法


Posted in PHP onJuly 26, 2017

本文实例讲述了Windows平台实现PHP连接SQL Server2008的方法。分享给大家供大家参考,具体如下:

如果你需要和sql server通信需要到http://msdn.microsoft.com/en-us/sqlserver/ff657782.aspx自行下载微软提供的The SQL Server Driver for PHP。这是一个自解压文件,解压后会得到以下几个文件:

php_sqlsrv_52_nts_vc6.dll
php_sqlsrv_52_ts_vc6.dll
php_sqlsrv_53_nts_vc6.dll
php_sqlsrv_53_nts_vc9.dll
php_sqlsrv_53_ts_vc6.dll
php_sqlsrv_53_ts_vc9.dll
php_sqlsrv_license.rtf
SQLServerDriverForPHP.chm
SQLServerDriverForPHP_Readme.htm

PS:上述压缩文件也可点击此处本站下载

其中,52,53表示PHP的5.2.X和5.3.X的版本;nts表示非线和安全,ts表示线程安全;vc6表示使用Apache作为Web Server,vc9表示使用IIS作为Web Server。

根据您的配置,将相应的DLL文件拷贝到php安装目录的ext文件夹中,接下来打开php.ini,添加以下语句打开php_sqlsrv和php_pdo_sqlsrv扩展:

——————————————————?
[PHP_PDO_SQLSRV]
extension=php_pdo_sqlsrv_53_ts_vc6.dll
[PHP_SQLSRV]
extension=php_sqlsrv_53_ts_vc6.dll
—————————————————

这里的53表示的是php5.3,如果你的是5.2版,就改成52,如果你的PHP版本是线程安全的,那么你的PHP安装目录下应该有一个php5ts.dll,与这里的两行语句对应,如果是php5nts.dll,那么上面的语句应该是:

—————————————————————-
[PHP_PDO_SQLSRV]
extension=php_pdo_sqlsrv_53_nts_vc6.dll
[PHP_SQLSRV]
extension=php_sqlsrv_53_nts_vc6.dll
—————————————————-

压缩包里有各个版本对于的dll文件,大家可以去仔细核查。

开启扩展后,重启apache,这样就可以连接sqlserver了,但是还有一点要注意,如果你没有安装Microsoft SQL Server 2008 R2 Native Client,必须去http://msdn.microsoft.com/en-us/library/cc296170(SQL.90).aspx下载安装,因为微软的这个扩展包需要这个支持。

一切妥当之后,就可以写php代码了,如果你下载了The SQL Server Driver for PHP,那么在解压缩后的文件夹里有一个帮助文档,你可以很容易的找到示例,在这里站长介绍一个简单的例子:

<?php
//本地测试的服务名
$serverName = "(127.0.0.1)";
//使用sql server身份验证,参数使用数组的形式,一次是用户名,密码,数据库名
//如果你使用的是windows身份验证,那么可以去掉用户名和密码
$connectionInfo = array( "UID"=>"root",
"PWD"=>"root2010″,
"Database"=>"master");
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn )
{
echo "Connection established.\n";
}
else
{
echo "Connection could not be established.\n";
die( print_r( sqlsrv_errors(), true));
}
?>

如果连接不成功,重启sql server再试。

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
在同一窗体中使用PHP来处理多个提交任务
Oct 09 PHP
用PHP 4.2书写安全的脚本
Oct 09 PHP
PHP 开发环境配置(测试开发环境)
Apr 28 PHP
解析PHP跳出循环的方法以及continue、break、exit的区别介绍
Jul 01 PHP
PHP循环函数使用介绍之PHP基础入门教程
Sep 21 PHP
php二维数组用键名分组相加实例函数
Nov 06 PHP
php实现encode64编码类实例
Mar 24 PHP
PHP mysqli_free_result()与mysqli_fetch_array()函数详解
Sep 21 PHP
php实现等比例不失真缩放上传图片的方法
Nov 14 PHP
PHP Trait代码复用类与多继承实现方法详解
Jun 17 PHP
PHP延迟静态绑定使用方法实例解析
Sep 05 PHP
PHP fopen中文文件名乱码问题解决方案
Oct 28 PHP
php判断str字符串是否是xml格式数据的方法示例
Jul 26 #PHP
深入理解Yii2.0乐观锁与悲观锁的原理与使用
Jul 26 #PHP
php实现微信企业号支付个人的方法详解
Jul 26 #PHP
PHP编程实现微信企业向用户付款的方法示例
Jul 26 #PHP
浅谈Yii乐观锁的使用及原理
Jul 25 #PHP
PHP异常处理定义与使用方法分析
Jul 25 #PHP
PHP实现防盗链的方法分析
Jul 25 #PHP
You might like
《PHP边学边教》(02.Apache+PHP环境配置――上篇)
2006/12/13 PHP
php中随机函数mt_rand()与rand()性能对比分析
2014/12/01 PHP
PHP中curl_setopt函数用法实例分析
2015/04/16 PHP
完美解决phpdoc导出文档中@package的warning及Error的错误
2016/05/17 PHP
Thinkphp微信公众号支付接口
2016/08/04 PHP
JavaScript:new 一个函数和直接调用函数的区别分析
2013/07/10 Javascript
javascript使用location.search的示例
2013/11/05 Javascript
js 判断文件类型并控制表单提交示例代码
2013/11/14 Javascript
jQuery实现异步获取json数据的2种方式
2014/08/29 Javascript
深入理解Javascript中的作用域链和闭包
2017/04/25 Javascript
Vue中的Vux配置指南
2017/12/08 Javascript
使用Vue.js开发微信小程序开源框架mpvue解析
2018/03/20 Javascript
vue项目持久化存储数据的实现代码
2018/10/01 Javascript
详解webpack打包时排除其中一个css、js文件或单独打包一个css、js文件(两种方法)
2018/10/26 Javascript
Angular事件之不同组件间传递数据的方法
2018/11/15 Javascript
ES6 let和const定义变量与常量的应用实例分析
2019/06/27 Javascript
python Django框架实现自定义表单提交
2016/03/25 Python
python微信公众号之关注公众号自动回复
2018/10/25 Python
Python Sympy计算梯度、散度和旋度的实例
2019/12/06 Python
PyTorch中的Variable变量详解
2020/01/07 Python
基于Python获取照片的GPS位置信息
2020/01/20 Python
Python结合Window计划任务监测邮件的示例代码
2020/08/05 Python
Anaconda+spyder+pycharm的pytorch配置详解(GPU)
2020/10/18 Python
医学检验专业个人求职信范文
2013/12/04 职场文书
保卫科工作岗位职责
2014/03/01 职场文书
餐饮投资计划书
2014/04/25 职场文书
劳动竞赛口号
2014/06/16 职场文书
学校志愿者活动总结
2014/06/27 职场文书
庆六一活动总结
2014/08/29 职场文书
选对餐饮营销策略,营业额才会上涨
2019/08/27 职场文书
PyCharm配置KBEngine快速处理代码提示冲突、配置命令问题
2021/04/03 Python
解决Go gorm踩过的坑
2021/04/30 Golang
gojs实现蚂蚁线动画效果
2022/02/18 Javascript
PYTHON 使用 Pandas 删除某列指定值所在的行
2022/04/28 Python
移除Selenium中window.navigator.webdriver值
2022/06/10 Python
Pygame游戏开发之太空射击实战敌人精灵篇
2022/08/05 Python