sql-server-2000 – 如何从PHP 5.3及更高版本连接到MSSQL 2000

我有一个基于MS SQL Server 2000构建的遗留业务应用程序.我有一些基于Web的实用程序,使用带有mssql扩展名的PHP 5.2访问此数据库. 我需要重新安装Web服务器,我期待升级到PHP 5.4.不幸的是,PHP 5.3及更新版本不支持mssql扩展.有sqlsrv extension available f

我有一个基于MS SQL Server 2000构建的遗留业务应用程序.我有一些基于Web的实用程序,使用带有mssql扩展名的PHP 5.2访问此数据库.

我需要重新安装Web服务器,我期待升级到PHP 5.4.不幸的是,PHP 5.3及更新版本不支持mssql扩展.有sqlsrv extension available form Microsoft,但描述说只支持访问SQL Server 2005及更高版本.

如何从PHP 5.4连接到我的SQL Server 2000?有人已经解决了这个问题吗?

解决方法

这是一个非常复杂的问题.以下是(in)兼容性的详细信息,以便其他人可能花费更少的时间进行搜索和尝试.

来自Microsoft的PHP扩展sqlsrv

sqlsrv存在于两个(非官方)版本中,它们仅与32位PHP兼容.目前没有64位PHP的版本.

> sqlsrv 2.0版兼容PHP 5.2.4至5.3.x和SQL Native Client 2008 R2以连接到Microsoft SQL Server 2000,2005或2008.
> sqlsrv 3.0版兼容PHP 5.3.0至5.4.x和SQL Native Client 2012以连接到Microsoft SQL Server 2005,2008,2008 R2和SQL Server 2012.
>目前没有正式版支持PHP 5.5
>有一个unofficial version of SQLSRV 3.0 on Rob’s Area不需要SQL Native Client 2012,但应该与以前的SQL Native客户端一起运行.我还没试过这个.

PHP的ODBC扩展

使用PHP 5.4访问SQL Server 2000的另一种方法是通过odbc扩展.可以使用三个ODBC驱动程序连接SQL Server 2000:

>预装Windows 2008 R2的SQL Server ODBC客户端版本6.00
> SQL Server Native Client 9.0(SQL Server 2005功能包)
> SQL Server Native Client 10.0(SQL Server 2008 R2功能包)

每个ODBC驱动程序的连接代码:

$connection_string = 'DRIVER={SQL Server};SERVER=mbsql;DATABASE=vg1';
$connection_string = 'DRIVER={SQL Native Client};SERVER=mbsql;DATABASE=vg1';
$connection_string = 'DRIVER={SQL Server Native Client 10.0};SERVER=mbsql;DATABASE=vg1';
$connection = odbc_connect( $connection_string,$user,$pass );

这些连接使用PHP 32位和64位.我还没有测试哪一个是最好的.

关于作者: dawei

【声明】:石家庄站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

为您推荐