PHP5.3.5如何连接MSSql Server

来源:互联网 发布:知字笔顺怎么写 编辑:程序博客网 时间:2024/04/30 00:02

windows系统下,PHP5.3以上的版本已经不支持mssql扩展,所以如果你需要和sql server通信需要到http://msdn.microsoft.com/en-us/sqlserver/ff657782.aspx自行下载微软提供的The SQL Server Driver for PHP。

下载后解压缩,将所有的.dll文件拷贝到php安装目录的ext文件夹中,接下来打开php.ini,添加以下语句打开php_sqlsrv和php_pdo_sqlsrv扩展:
——————————————————–
[PHP_PDO_SQLSRV]
extension=php_pdo_sqlsrv_53_ts_vc6.dll
[PHP_SQLSRV]
extension=php_sqlsrv_53_ts_vc6.dll
—————————————————

这里的53表示的是php5.3,如果你的是5.2版,就改成52,如果你的PHP版本是线程安全的,那么你的PHP安装目录下应该有一个php5ts.dll,与这里的两行语句对应,如果是php5nts.dll,那么上面的语句应该是:
—————————————————————-
[PHP_PDO_SQLSRV]
extension=php_pdo_sqlsrv_53_nts_vc6.dll
[PHP_SQLSRV]
extension=php_sqlsrv_53_nts_vc6.dll
—————————————————-

压缩包里有各个版本对于的dll文件,大家可以去仔细核查。

开启扩展后,重启apache,这样就可以连接sqlserver了,但是还有一点要注意,如果你没有安装Microsoft SQL Server 2008 R2 Native Client,必须去http://msdn.microsoft.com/en-us/library/cc296170(SQL.90).aspx下载安装,因为微软的这个扩展包需要这个支持。

一切妥当之后,就可以写php代码了,如果你下载了The SQL Server Driver for PHP,那么在解压缩后的文件夹里有一个帮助文档,你可以很容易的找到示例,在这里站长介绍一个简单的例子:
<?php
//本地测试的服务名
$serverName = “(local)”;
//使用sql server身份验证,参数使用数组的形式,一次是用户名,密码,数据库名
//如果你使用的是windows身份验证,那么可以去掉用户名和密码
$connectionInfo = array( “UID”=>”root”,
“PWD”=>”root2010″,
“Database”=>”master”);

$conn = sqlsrv_connect( $serverName, $connectionInfo);

if( $conn )
{
echo “Connection established.\n”;
}
else
{
echo “Connection could not be established.\n”;
die( print_r( sqlsrv_errors(), true));
}
?>

如果连接不成功,重启sql server再试。

1.5.3不能直接连了,要下载微软插件,看这里吧
http://www.phptogether.com/archives/7914

http://www.microsoft.com/sqlserver/en/us/solutions-technologies/rich-application-development/web-development.aspx下

2. 建议使用PDO连接MSSQL数据库。
PHP5.X以后Microsoft提供了Windows平台的专门扩展。
http://www.microsoft.com/sqlserver/2005/en/us/php-driver.aspx

纳闷了,官方说明:

http://msdn.microsoft.com/library/cc296172%28v=SQL.90%29.aspx

SQL Server Driver for PHP 是一项 PHP 5 扩展插件,它提供对 SQL Server 2005 和 SQL Server 2008 的数据访问。

系统要求:

http://msdn.microsoft.com/zh-cn/library/cc296170%28v=SQL.90%29.aspx

受支持的操作系统,例如:
Windows Server 2003 Service Pack 1
Windows XP Service Pack 3
Windows Vista
Windows Server 2008
Windows 7

到这里,基本已经得出结论了:PHP5.3.3不能直接连接SQL SERVER2000。