繁体   English   中英

使用PHP PDO连接到MSSQL Server 2005

[英]Connecting to MSSQL Server 2005 using PHP PDO

我正在尝试与PHP和MS SQL Server 2005建立连接。我在Windows 8和PHP版本5.3.28中使用IIS 8。 我已经完成了我的研究,我发现了MSSQL PHP PDO( http://www.php.net/manual/en/ref.pdo-sqlsrv.connection.phphttp://technet.microsoft.com/en- us / library / ff754357(v = sql.105).aspx ),下载并启用了我从Microsoft网站(Microsoft驱动程序3.0 for PHP for SQL Server)中找到的所有PDO相关DLL,并确保它们反映在phpinfo()中。

extension=php_pdo_sqlsrv_52_nts_vc6.dll
extension=php_pdo_sqlsrv_53_nts.dll
extension=php_pdo_sqlsrv_53_nts_vc6.dll
extension=php_pdo_sqlsrv_53_nts_vc9.dll
extension=php_pdo_sqlsrv_54_nts.dll
extension=php_pdo_sqlsrv_54_nts.dll
extension=php_sqlsrv_54_nts.dll
extension=php_sqlsrv_53_ts_vc9.dll

Stock Over Flow中的以下链接也让我陷入困境:

我能够修复“找不到驱动程序”和“连接字符串无效”的问题,这是我当前的PHP代码:

$db_server = "func.website.com,8787";
//$db_server = "func.website.com:8787\sqlexpress";
$db_database = "db_BreadNButter";
$db_user = "tinapay";
$db_passwd = "p@ssword";

try {
   //$db = new PDO ("mssql:host=$db_server;dbname=$db_database;", $db_user, $db_passwd);
   $db = new PDO ("sqlsrv:Server=$db_server;Database=$db_database;", $db_user, $db_passwd);
} catch(PDOException $exception) {
   die("Unable to open database.<br>Error message:<br><br>$exception.");
}

我认为(手指交叉)我已经建立了与MSSQL DBase的连接,但我收到以下错误:

exception 'PDOException' with message 'SQLSTATE[08001]:
[Microsoft][SQL Server Native Client 11.0]TCP Provider: Timeout error [258].
' in C:\inetpub\wwwroot\breadnbutter\class.connection.php:12 Stack trace: #0
C:\inetpub\wwwroot\breadnbutter\class.connection.php(12):
PDO->__construct('sqlsrv:Server=f...', 'tinapay', 'p@ssword') #1 {main}.

任何人都可以告诉我为什么我会出现超时错误,我该如何解决这个问题呢?

端口应该是func.website.com:8787 你有逗号的拼写错误。

如何在php 5.4.4中连接sqlsrv 2008 erro是:Array([0] => Array([0] => IMSSP [SQLSTATE] => IMSSP [1] => -49 [code] => -49 [2 ] =>此扩展程序需要Microsoft SQL Server 2012 Native Client。访问以下URL以下载适用于x86的Microsoft SQL Server 2012 Native Client ODBC驱动程序: http//go.microsoft.com/fwlink/?LinkId = 163712 [message ] =>此扩展程序需要Microsoft SQL Server 2012 Native Client。访问以下URL以下载x86的Microsoft SQL Server 2012 Native Client ODBC驱动程序: http//go.microsoft.com/fwlink/?LinkId = 163712

[1] => Array
    (
        [0] => IM002
        [SQLSTATE] => IM002
        [1] => 0
        [code] => 0
        [2] => [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified
        [message] => [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified
    )

我仍然遇到这个问题,但我能够说服我的老板使用asp而不是PHP。 非常感谢那些帮助我的人。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM