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

本文实例讲述了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数据库程序设计有所帮助。

时间: 2024-09-20 06:34:58

PHP连接MSSQL2008/2005数据库(SQLSRV)配置实例_php技巧的相关文章

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

1.下载扩展 (1)去官方下载一个SQL Server Driver for PHP的扩展包,我是在这里下载的http://www.microsoft.com/en-us/download/details.aspx?id=20098[记得下载后好像是要先安装然后再解压]   (2)您也可以直接从本站下载(我之前下载的,来源于microsoft官方)[ 点击直接下载 ] 将下载下来的rar文件解压后你就会得到一堆的.dll文件 下载驱动程序,下载后安装释放程序,里面有以下文件: php_pdo_s

PHP连接局域网MYSQL数据库的简单实例_php实例

复制代码 代码如下:    $conn=mysql_connect('192.168.0.220','root','123');    if(!$conn) echo "失败!";    else echo "成功!";      // 从表中提取信息的sql语句    $sql="SELECT * FROM user where userName='$user_name'";    // 执行sql查询    $result=mysql_db_

php面象对象数据库操作类实例_php技巧

本文实例讲述了php面象对象数据库操作类.分享给大家供大家参考. 具体实现代码如下: 复制代码 代码如下: //此处构造一个数据库操作类,封装所有数据库操作 //可以扩展便于后台管理程序的使用 Class MySQLDB  {     var $host;     var $user;     var $passwd;     var $database;    var $conn;       //利用构造函数实现变量初始化     //同时连接数据库操作    function MySQLD

PHP将session信息存储到数据库的类实例_php技巧

本文实例讲述了PHP将session信息存储到数据库的类.分享给大家供大家参考.具体分析如下: SessionHandlerInterface接口是PHP内置的接口,直接实现就行了 具体可以看php手册关于session_set_save_handler函数的解释! PHP代码如下: 复制代码 代码如下: /** * session信息存储到数据库的类 * 表结构: * CREATE TABLE IF NOT EXISTS `sessioninfo` ( *  `sid` varchar(255

php+mysql实现数据库随机重排实例_php技巧

本文实例实现了php+mysql数据库随机重排的方法,可将表中的所有数据随机读出来一次之后再进行随机保存到另一个表,从而达到了记录随机的功能. 主要实现代码如下: 复制代码 代码如下: <?php //数据库连接就不写在这里面了 $s = isset( $_GET['s'] )?$_GET['s']:0; $e = isset( $_GET['e'])?$_GET['e']:50; $count =85000; if( $s < $count ) {  $sql = "select

apache-Apache james连接达梦数据库怎么配置

问题描述 Apache james连接达梦数据库怎么配置 Apache james连接达梦数据库怎么配置 dm.jdbc.driver.DmDriverjdbc:dm://127.0.0.1:5236/DAMENG 总是报an exception occured getting a database connection 解决方案 http://www.docin.com/p-917276885.html 解决方案二: 达梦数据库的连接配置Apache James使用和配置apache jame

PHP开发环境配置(MySQL数据库安装图文教程)_php技巧

一. MySQL的安装 运行MYSQL安装程序(mysql-essential-5.1.40-win32.msi) 开发环境配置(MySQL数据库安装图文教程)_php技巧-mysql数据库主从配置">   选择安装类型为Custom   点选Change按钮更改安装目录   将安装目录更改为到D盘(可根据自己的系统更改)     点击Install按钮开始安装   安装程序将开始安装MySQL到指定的路径中     安装过程中汇出现一些广告点Next跳过即可.     安装完成后出现以下

PHP程序中使用adodb连接不同数据库的代码实例_php实例

adodb.inc.php文件需要去下载一个adodb,放在相应的位置,然后在php中include进来就可以. 连接oracle数据库 <?php include("adodb/adodb.inc.php"); //包含adodb类库文件 $conn = &NewADOConnection('oci8'); $conn->Connect($DBServer,$DBUser,$DBPass); ?> 连接PostgreSQL数据库 <?php inclu

Drupal7连接多个数据库及常见问题解决_php实例

如果你遇到这些问题:1.Drupal如何连接到多个数据库?2.Drupal连接到多个数据库后,但是发现程序报错,这是怎么了?3.Drupal获取.添加.修改.删除多个数据库时,数据没有正确的写入数据库或者读取到空的数据,怎么解决?4.只想在Drupal某个函数调用或控制其他数据库,但是失败了?请认真看看后面的介绍,并如何解决你的问题.一.Drupal如何连接到多个数据库?允许Drupal连接多个数据库,需要转换$db_url为数组.默认连接单个数据库的URL格式(字符串): 复制代码 代码如下: