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实现的MySQL数据浏览器
Mar 11 PHP
PHP获取表单textarea数据中的换行问题
Sep 10 PHP
基于simple_html_dom的使用小结
Jul 01 PHP
php+highchats生成动态统计图
May 21 PHP
ThinkPHP之getField详解
Jun 20 PHP
ThinkPHP表单自动提交验证实例教程
Jul 18 PHP
PHP中数据库单例模式的实现代码分享
Aug 21 PHP
ThinkPHP模板循环输出Volist标签用法实例详解
Mar 23 PHP
PHP实现用户异地登录提醒功能的方法【基于thinkPHP框架】
Mar 15 PHP
Laravel Eloquent分表方法并使用模型关联的实现
Nov 25 PHP
Laravel框架中队列和工作(Queues、Jobs)操作实例详解
Apr 06 PHP
详解Go与PHP的语法对比
May 29 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网页游戏学习之Xnova(ogame)源码解读(十四)
2014/06/26 PHP
PHP导入导出Excel代码
2015/07/07 PHP
PHP切割汉字的常用方法实例总结
2019/04/27 PHP
thinkphp5框架实现数据库读取的数据转换成json格式示例
2019/10/10 PHP
ASP.NET jQuery 实例15 通过控件CustomValidator验证CheckBoxList
2012/02/03 Javascript
jQuery 文本框得失焦点的简单实例
2014/02/19 Javascript
JS代码实现根据时间变换页面背景效果
2016/06/16 Javascript
jQuery EasyUI API 中文帮助文档和扩展实例
2016/08/01 Javascript
BootStrap中的表单大全
2016/09/07 Javascript
JavaScript中boolean类型之三种情景实例代码
2016/11/21 Javascript
BootStrap表单验证 FormValidation 调整反馈图标位置的实例代码
2017/05/17 Javascript
微信小程序组件 marquee实例详解
2017/06/23 Javascript
vue-resouce设置请求头的三种方法
2017/09/12 Javascript
基于Vue、Vuex、Vue-router实现的购物商城(原生切换动画)效果
2018/01/09 Javascript
详解如何在微信小程序开发中正确的使用vant ui组件
2018/09/13 Javascript
Vue引用Swiper4插件无法重写分页器样式的解决方法
2018/09/27 Javascript
详解在Angular4中使用ng2-baidu-map的方法
2019/06/19 Javascript
Vue2.0实现简单分页及跳转效果
2019/07/29 Javascript
JS实现旋转木马轮播图
2020/01/01 Javascript
基于vue和websocket的多人在线聊天室
2020/02/01 Javascript
JS变量提升原理与用法实例浅析
2020/05/22 Javascript
Python原始字符串(raw strings)用法实例
2014/10/13 Python
python3 cvs将数据读取为字典的方法
2018/12/22 Python
Python3.4学习笔记之常用操作符,条件分支和循环用法示例
2019/03/01 Python
python函数局部变量、全局变量、递归知识点总结
2019/11/15 Python
python:HDF和CSV存储优劣对比分析
2020/06/08 Python
爱尔兰家电数码商城:Currys PC World爱尔兰
2016/07/23 全球购物
旧时光糖果:Old Time Candy
2018/02/05 全球购物
Kneipp克奈圃美国官网:德国百年精油配方的传承
2018/02/07 全球购物
安全生产活动月方案
2014/03/09 职场文书
琅琊山导游词
2015/02/05 职场文书
2016七夕情人节感言
2015/12/09 职场文书
2016年小学生迎国庆广播稿
2015/12/18 职场文书
小学三年级数学教学反思
2016/02/16 职场文书
传单、海报早OUT了,另类传单营销方案送给你!
2019/07/15 职场文书
MySQL空间数据存储及函数
2021/09/25 MySQL