PHP连接MSSQL2008/2005数据库(SQLSRV)配置实例


Posted in PHP onOctober 22, 2014

本文实例讲述了PHP连接MSSQL2008/2005数据库(SQLSRV)配置方法,分享给大家供大家参考。具体方法如下:

PHP连接MSSQL2008/2005数据库与以往的连接mssql2000是不一样的,连接mssql2008/2005是需要自己添加PHP对MSSQL连接的驱动扩展了,而我们常用的hp.ini中的extension=php_mssql.dll扩展只适用连接于MSSQL2000,下面我们就来看看对此的解决办法

1.下载扩展

(1)去官方下载一个SQL Server Driver for PHP的扩展包,我是在这里下载的http://www.microsoft.com/en-us/download/details.aspx?id=20098【记得下载后好像是要先安装然后再解压】

(2)您也可以直接从本站下载(我之前下载的,来源于microsoft官方)【点击此处直接下载】
将下载下来的rar文件解压后你就会得到一堆的.dll文件

下载驱动程序,下载后安装释放程序,里面有以下文件:
php_pdo_sqlsrv_52_nts.dll
php_pdo_sqlsrv_52_ts.dll
php_pdo_sqlsrv_53_nts_vc6.dll
php_pdo_sqlsrv_53_nts_vc9.dll
php_pdo_sqlsrv_53_ts_vc6.dll
php_pdo_sqlsrv_53_ts_vc9.dll
php_sqlsrv_52_nts.dll
php_sqlsrv_52_ts.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
SQLServerDriverForPHP.chm(手册,英文够好的话,可以看看,嘿嘿)
SQLServerDriverForPHP_License.rtf
SQLServerDriverForPHP_Readme.htm(自述文件)

2.添加扩展

根据(vc6/vc9)需要选择扩展,我的环境是WAMP(php5.2.6/apache2.2.8),我选用的是php_sqlsrv_52_ts_vc6.dll,php_pdo_sqlsrv_52_ts_vc6.dll这两个文件,复制到wamp安装目录下的ext目录下,我的ext目录是在wamp/bin/php/php5.2.6/ext/

3.配置php.ini

(1)在php.ini的Dynamic Extensions中添加如下两条扩展:
    extension=php_sqlsrv_52_ts_vc6.dll
    extension=php_pdo_sqlsrv_52_ts_vc6.dll
(2)将;extension=php_pdo.dll前面的;去掉,开启pdo连接扩展
(3)重新启动apache

4.连接数据库(pdo连接)

<?php

  $servern="SFKFK27EL8FJ\SQLTRY";

  $coninfo=array("Database"=>"try2","UID"=>"sa","PWD"=>"123");

  $conn=sqlsrv_connect($servern,$coninfo) or die ("连接失败!");

  $val=sqlsrv_query($conn,"select * from usertable");

  while($row=sqlsrv_fetch_array($val)){

    echo $row[1]."<br />";

  }

  sqlsrv_close($conn); 

?>

5.例子

链接示例:
mssql_lib.php文件如下:

<?php

class DB {

    var $con = null;

    function __construct($dbhost,$dbuser,$dbpass,$dbname) {

        $connectionInfo =  array("UID"=>$dbuser,"PWD"=>$dbpass,"Database"=>$dbname);

        $this->con = sqlsrv_connect($dbhost,$connectionInfo);

    }

    function query($sql){

        $result = sqlsrv_query($this->con, $sql);

    }

    function getRow($sql){

        $result = sqlsrv_query($this->con, $sql);

        $arr = array();

        while($row = sqlsrv_fetch_array($result))

        {

            $arr[] = $row;

        }

        return $arr[0];

    }

    function getAll($sql){

        $result = sqlsrv_query($this->con, $sql);

        $arr = array();

        while($row = sqlsrv_fetch_array($result))

        {

            $arr[] = $row;

        }

        return $arr;

    }

    function __destruct() {

        unset($con);

    }

}

test.php页面如下:

//简单调用

$db = new DB(DB_HOST, DB_USER, DB_PASS, DB_NAME);

$sql = "select * from crm_order_batch where (status=0 or status is null) and lock_id is not null  ";

$orders_add_list = $db->getAll($sql);

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

PHP 相关文章推荐
PHP 反射机制实现动态代理的代码
Oct 22 PHP
Windows IIS PHP 5.2 安装与配置方法
Jun 08 PHP
建站常用13种PHP开源CMS比较
Aug 23 PHP
PHP 获取MSN好友列表的代码(2009-05-14测试通过)
Sep 09 PHP
PHP array_push 数组函数
Dec 26 PHP
php设计模式 Visitor 访问者模式
Jun 28 PHP
PHP __autoload()方法真的影响性能吗?
Mar 30 PHP
php实现压缩多个CSS与JS文件的方法
Nov 11 PHP
thinkphp命名空间用法实例详解
Dec 30 PHP
PHP中大括号'{}'用法实例总结
Feb 08 PHP
PHP从零开始打造自己的MVC框架之类的自动加载实现方法详解
Jun 03 PHP
laravel实现前后台路由分离的方法
Oct 13 PHP
百度实时推送api接口应用示例
Oct 21 #PHP
php之curl实现http与https请求的方法
Oct 21 #PHP
教你如何开启shopnc b2b2c 伪静态
Oct 21 #PHP
PHP大转盘中奖概率算法实例
Oct 21 #PHP
PHP与MYSQL中UTF8编码的中文排序实例
Oct 21 #PHP
php cookie中点号(句号)自动转为下划线问题
Oct 21 #PHP
微信公众平台网页授权获取用户基本信息中授权回调域名设置的变动
Oct 21 #PHP
You might like
PHP防范SQL注入的具体方法详解(测试通过)
2014/05/09 PHP
浅谈Eclipse PDT调试PHP程序
2014/06/09 PHP
使用PHPStorm+XDebug搭建单步调试环境
2017/11/19 PHP
用js+iframe形成页面的一种遮罩效果的具体实现
2013/12/31 Javascript
Jquery仿IGoogle实现可拖动窗口示例代码
2014/08/22 Javascript
jQuery实现鼠标划过修改样式的方法
2015/04/14 Javascript
jQuery实现的淡入淡出二级菜单效果代码
2015/09/15 Javascript
Angularjs中使用Filters详解
2016/03/11 Javascript
ionic实现带字的toggle滑动组件
2016/08/27 Javascript
JavaScript正则表达式实例详解
2016/10/16 Javascript
Webpack+Vue如何导入Jquery和Jquery的第三方插件
2017/02/20 Javascript
详解vue-cli开发环境跨域问题解决方案
2017/06/06 Javascript
React事件处理的机制及原理
2018/12/03 Javascript
详解基于node.js的脚手架工具开发经历
2019/01/28 Javascript
js中对象与对象创建方法的各种方法
2019/02/27 Javascript
如何构建一个Vue插件并生成npm包
2020/10/26 Javascript
微信小程序实现登录注册功能
2020/12/29 Javascript
python3中dict(字典)的使用方法示例
2017/03/22 Python
Pandas之ReIndex重新索引的实现
2019/06/25 Python
使用Python中的reduce()函数求积的实例
2019/06/28 Python
解决tensorflow训练时内存持续增加并占满的问题
2020/01/19 Python
使用pandas读取表格数据并进行单行数据拼接的详细教程
2021/03/03 Python
纯CSS3实现的井字棋游戏
2020/11/25 HTML / CSS
利用html5 file api读取本地文件示例(如图片、PDF等)
2018/03/07 HTML / CSS
村捐赠仪式答谢词
2014/01/21 职场文书
保险公司晨会主持词
2014/03/22 职场文书
公证委托书标准格式
2014/09/11 职场文书
2014年四风问题个人对照自查剖析材料
2014/09/15 职场文书
乡镇党委书记个人整改措施
2014/09/15 职场文书
2015年高一班主任工作总结
2015/05/13 职场文书
学习焦裕禄观后感
2015/06/09 职场文书
股权投资协议书
2016/03/23 职场文书
MySQL安装后默认自带数据库的作用详解
2021/04/27 MySQL
Python学习之os包使用教程详解
2022/03/21 Python
SpringBoot2零基础到精通之数据与页面响应
2022/03/22 Java/Android
MYSQL优化之数据表碎片整理详解
2022/04/03 MySQL