php 连接mssql

以前用的都是mysql,今天突然想用下mssql,起先用的是sql server200.

第一种方法

打开mssql.dll拓展。然后把mssql.secure_connection = off改为on

使用mssql拓展。类似于mysql拓展库

$conn=@mssql_connect('(local)','sa','');
if(!$conn){
//die(mssql_error());
die("lianj");

}
mssql_select_db('ejia');

 第二种方法

使用sqlsrv 拓展库。需要在http://www.microsoft.com/en-us/download/details.aspx?id=20098 下载。有2.0和3.0两个版本,2.0支持php5.2 3.0支持php5.3以及以上版本

3.0为例

包括php5.3和php5.4两个php版本,而每个版本又有pdo和sqlsrv拓展。

带有nts说明是非线程安全,不建议用于正式环境

把对应的dll文件放到ext文件夹下,然后在php.in中加入extension=对应的拓展库。重启apache即可

SQLSRV_Help.chm是参考文档,有案例。

1 $connectionInfo = array("UID" => 'sa', "PWD" => '', "Database"=>"ejia");
2 $serverName = "(local)";
3 $conn = sqlsrv_connect( $serverName, $connectionInfo);
4 if(!$conn){
5 
6 echo "连接失败";
7 }

PDO_sqlsrv方式连接

 1 <?php
 2 //官方例子
 3    $c = new PDO( "sqlsrv:Server=(local) ; Database = AdventureWorks ", "", "", array(PDO::SQLSRV_ATTR_DIRECT_QUERY => true)); 
 4 
 5    $query = 'SELECT * FROM Person.ContactType'; 
 6    $stmt = $c->query( $query ); 
 7    while ( $row = $stmt->fetch( PDO::FETCH_ASSOC ) ) { 
 8       print_r( $row ); 
 9    }
10    $c = null; 
11 ?>
12  

 

注意在sql2000以上环境,mssql拓展就不能正常使用了,所以推荐使用sqlsrv和PDO_sqlsrv

在高版本是数据库上,可能需要安装sql server 2008 Native Client

posted @ 2014-01-24 23:50  闲云-野鹤  阅读(430)  评论(0编辑  收藏  举报