PHP5.2连接sql2008,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连接)

$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]."
";

}

sqlsrv_close($conn);

?>

5.例子链接示例:

mssql_lib.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数据库程序设计有所帮助。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值