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 09 PHP
用ODBC的分页显示
Oct 09 PHP
window+nginx+php环境配置 附配置搭配说明
Dec 29 PHP
PHP读取ACCESS数据到MYSQL的代码
May 11 PHP
用PHP实现 上一篇、下一篇的代码
Sep 29 PHP
Yii把CGridView文本框换成下拉框的方法
Dec 03 PHP
PHP中的随机性 你觉得自己幸运吗?
Jan 22 PHP
Laravel框架路由设置与使用示例
Jun 12 PHP
php数组和链表的区别总结
Sep 20 PHP
浅谈Laravel中的三种中间件的作用
Oct 13 PHP
PHP如何开启Opcache功能提升程序处理效率
Apr 27 PHP
XAMPP升级PHP版本实现步骤解析
Sep 04 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中3des加密代码(完全与.net中的兼容)
2012/08/02 PHP
解析php下载远程图片函数 可伪造来路
2013/06/25 PHP
php获取服务器端mac和客户端mac的地址支持WIN/LINUX
2014/05/15 PHP
PHP生成及获取JSON文件的方法
2016/08/23 PHP
使用Microsoft Ajax Minifier减小JavaScript文件大小的方法
2010/04/01 Javascript
添加JavaScript重载函数的辅助方法2
2010/07/04 Javascript
jQuery EasyUI API 中文文档 - PropertyGrid属性表格
2011/11/18 Javascript
javascript:;与javascript:void(0)使用介绍
2013/06/05 Javascript
js实现身份证号码验证的简单实例
2014/02/19 Javascript
Ajax清除浏览器js、css、图片缓存的方法
2015/08/06 Javascript
JS平滑无缝滚动效果的实现代码
2016/05/06 Javascript
js实现文字超出部分用省略号代替实例代码
2016/09/01 Javascript
ES6学习笔记之Set和Map数据结构详解
2017/04/07 Javascript
JS高阶函数原理与用法实例分析
2019/01/15 Javascript
bootstrap table实现横向合并与纵向合并
2019/07/18 Javascript
JS实现商品橱窗特效
2020/01/09 Javascript
基于jsbarcode 生成条形码并将生成的条码保存至本地+源码
2020/04/27 Javascript
举例讲解Python的Tornado框架实现数据可视化的教程
2015/05/02 Python
Python第三方库xlrd/xlwt的安装与读写Excel表格
2017/01/21 Python
详解Python中最难理解的点-装饰器
2017/04/03 Python
python判断字符串是否是json格式方法分享
2017/11/07 Python
Python对List中的元素排序的方法
2018/04/01 Python
python 遍历目录(包括子目录)下所有文件的实例
2018/07/11 Python
tensorflow实现逻辑回归模型
2018/09/08 Python
python使用pdfminer解析pdf文件的方法示例
2018/12/20 Python
在django中实现choices字段获取对应字段值
2020/07/12 Python
Anaconda使用IDLE的实现示例
2020/09/23 Python
Html5元素及基本语法详解
2016/08/02 HTML / CSS
Booking.com美国:全球酒店预订网站
2017/04/18 全球购物
将n个数按输入顺序的逆序排列,用函数实现
2012/11/14 面试题
行政内勤岗位职责
2014/04/07 职场文书
大学新闻系自荐书
2014/05/31 职场文书
党员个人整改措施
2014/10/24 职场文书
维稳承诺书
2015/01/20 职场文书
领导参观欢迎词
2015/01/26 职场文书
php远程请求CURL案例(爬虫、保存登录状态)
2021/04/01 PHP