将Windows上的PHP连接到MS SQL Server


Connect PHP on Windows to MS SQL Server

我正在尝试将Windows上的Apache/PHP连接到同一Windows上的SQL Server。

我能够从我的linux虚拟机连接到数据库,我可以从Windows命令行用sqlcmd连接到SQL Server。我似乎无法让PHP连接,所以我假设我在某个地方使用了不正确的模块。我读了很多书,但似乎没有什么能让这个成功。

任何想法?

Apache 2.2, PHP 5.2

$myServer = ".'SQLEXPRESS";
$myUser = "sa";
$myPass = "test1234";
$myDB = "eel";
mssql_connect($myServer, $myUser, $myPass)
Warning: mssql_connect() [function.mssql-connect]: Unable to connect to server: .'SQLEXPRESS in

说真的。不要使用MSSQL驱动程序。使用Microsoft提供的SQLSRV驱动程序。我已经使用了很长一段时间,php_mssql驱动程序真的应该被弃用。

确保为PHP使用最新版本的SQLSRV驱动程序。您可以在这里找到最新的稳定版本(v2.0.1): http://www.microsoft.com/download/en/details.aspx?id=20098

也就是说,还有一个v3测试版的预发布。

确保为您的PHP版本选择正确的驱动程序。最有可能的是,您需要vc9。如果您使用快速cgi,则需要非线程安全版本。把它放到php extensions目录中,然后添加到php.ini文件中。

然后,必须安装SQL Native Client。如果你没有安装这个,驱动程序就会死在水里。您可以在头部找到它(在页面下方搜索实际包):http://www.microsoft.com/download/en/details.aspx?id=3522

一旦你完成了所有这些,你应该是金色的。确保您阅读了包含的帮助文件以获得正确的用法。