当前位置: 首页 > 编程笔记 >

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

常睿范
2023-03-14
本文向大家介绍PHP连接MSSQL2008/2005数据库(SQLSRV)配置实例,包括了PHP连接MSSQL2008/2005数据库(SQLSRV)配置实例的使用技巧和注意事项,需要的朋友参考一下

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

 类似资料:
  • 问题内容: 我从MySQL迁移到MS SQL Server,并尝试从例程表中获取所有数据。我已连接,但不确定如何使用sqlsrv获取数据。这是我走了多远: 问题答案: 首先,如果我没记错,则将结果存储 到其中, 并且该结果不是类obj它的资源,因此请删除 此示例将连接,然后从中获取返回的资源

  •   //默认Mysql数据库 'default_mysql_config' => 'mysql', //Mysql数据库配置 'mysql' => array( 'host'  => 'localhost', 'port' => '3306', 'username' => 'root', 'password' => '', 'db_name' => 'g-framework', 'db_prefi

  • 由于基于HTTP协议的Web程序是无状态的,因此,在应用程序中使用JDBC时,每次处理客户端请求时都会重新建立数据库连接。如果客户端的请求非常频繁,服务端在处理数据库时将会消耗非常多的资源。因此,在Tomcat中提供了数据库连接池技术。数据库连接池负责分配、管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而不是重新建立一个数据库连接。在使用完一个数据库连接后,将其归还数据库连接池

  • 本文向大家介绍thinkphp配置连接数据库技巧,包括了thinkphp配置连接数据库技巧的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了thinkphp配置连接数据库的常用方法,分享给大家供大家参考。具体方法如下: 1.在thinkphp入口文件同目录下的config.inc.php中添加数据库配置信息 然后在项目目录的config.php文件中添加如下代码: 在后台文件中也可以添加如上

  • 问题内容: 我试图从一个类中的数据库获取用户ID,但是我对类的经验很少甚至没有,我该如何从数据库中获取uid并返回uid? 所以基本上是这样的 就像我说的,我还是新手,所以任何建议或帮助都将不胜感激! 提前感谢! 问题答案: 首先构建一个MySQL类库…满足以下示例中的要求: 和配置文件…

  • 本文向大家介绍PHP连接sql server 2005环境配置及问题解决,包括了PHP连接sql server 2005环境配置及问题解决的使用技巧和注意事项,需要的朋友参考一下 一、Windows下PHP连接SQLServer 2005 设定:安装的Windows操作系统(Win7 或XP均可,其他系统暂未测试),在C盘下;PHP的相关文件位于c:/PHP下面,其配置文件php.ini位于C:\