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 相关文章推荐
smarty的保留变量问题
Oct 23 PHP
php调用mysql数据 dbclass类
May 07 PHP
PHP中集成PayPal标准支付的实现方法分享
Feb 06 PHP
ThinkPHP利用PHPMailer实现邮件发送实现代码
Sep 26 PHP
PHP中使用xmlreader读取xml数据示例
Dec 29 PHP
PHP易混淆知识整理笔记
Sep 24 PHP
PHP的Laravel框架中使用AdminLTE模板来编写网站后台界面
Mar 21 PHP
PHP之十六个魔术方法详细介绍
Nov 01 PHP
php正则表达式基本知识与应用详解【经典教程】
Apr 17 PHP
Linux下源码包安装Swoole及基本使用操作图文详解
Apr 02 PHP
PHP实现的操作数组类库定义与用法示例
May 24 PHP
php设计模式之模板模式实例分析【星际争霸游戏案例】
Mar 24 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测试程序运行时间的类
2012/02/05 PHP
PHP中设置一个严格30分钟过期Session面试题的4种答案
2014/07/30 PHP
微信开发之网页授权获取用户信息(二)
2016/01/08 PHP
php中让人头疼的浮点数运算分析
2016/10/10 PHP
php 文件下载 出现下载文件内容乱码损坏的解决方法(推荐)
2016/11/16 PHP
Laravel学习笔记之Artisan命令生成自定义模板的方法
2018/11/22 PHP
简单实用的PHP文本缓存类实例
2019/03/22 PHP
PHP执行linux命令6个函数代码实例
2020/11/24 PHP
对YUI扩展的Gird组件 Part-1
2007/03/10 Javascript
window.addeventjs事件驱动函数集合addEvent等
2008/02/19 Javascript
JavaScript this调用规则说明
2010/03/08 Javascript
js验证电话号码与手机支持+86的正则表达式
2014/01/23 Javascript
js实现文字在按钮上滚动的方法
2015/08/20 Javascript
JS 面向对象之继承---多种组合继承详解
2016/07/10 Javascript
详解vue.js根据不同环境(正式、测试)打包到不同目录
2018/07/13 Javascript
从零开始学习搭建React脚手架项目
2018/08/23 Javascript
vue2 中二级路由高亮问题及配置方法
2019/06/10 Javascript
Angular进行简单单元测试的实现方法实例
2020/08/16 Javascript
python编写弹球游戏的实现代码
2018/03/12 Python
PyQt5实现下载进度条效果
2018/04/19 Python
Python中字符串String的基本内置函数与过滤字符模块函数的基本用法
2019/05/27 Python
django如何通过类视图使用装饰器
2019/07/24 Python
python中time库的实例使用方法
2019/10/31 Python
pytorch 获取tensor维度信息示例
2020/01/03 Python
python enumerate内置函数用法总结
2020/01/07 Python
Python如何操作office实现自动化及win32com.client的运用
2020/04/01 Python
python使用nibabel和sitk读取保存nii.gz文件实例
2020/07/01 Python
HTML5中的Article和Section元素认识及使用
2013/03/22 HTML / CSS
AmazeUI在模态框中嵌入表单形成模态输入框
2020/08/20 HTML / CSS
英国领先的电子、技术和办公用品购物网站:Ebuyer
2018/04/04 全球购物
耐克亚太地区:Nike APAC
2019/12/07 全球购物
中软国际Java程序员机试题
2012/08/19 面试题
高等教育学自荐书范文
2014/02/10 职场文书
师德师风演讲稿
2014/05/05 职场文书
社区助残日活动总结
2014/08/29 职场文书
群众路线专项整治方案
2014/10/27 职场文书