与 PHP 的连接 SQL 服务器不工作
Connection SQL Server with PHP does not work
我想与 PHP 建立 SQL 服务器连接。
我使用下面的代码
<?php
$serverName = "serverName\sqlexpress"; //serverName\instanceName
$connectionInfo = array( "Database"=>"dbName", "UID"=>"userName", "PWD"=>"password");
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn ) {
echo "Connection established.<br />";
}else{
echo "Connection could not be established.<br />";
die( print_r( sqlsrv_errors(), true));
}
?>
他们return给我这个
Connection could not be established.
Array ( [0] => Array ( [0] => IM006 [SQLSTATE] => IM006 [1] => 0 [code] => 0 [2] => [Microsoft][Gestionnaire de pilotes ODBC] �chec SQLSetConnectAttr du pilote [message] => [Microsoft][Gestionnaire de pilotes ODBC] �chec SQLSetConnectAttr du pilote ) [1] => Array ( [0] => 01000 [SQLSTATE] => 01000 [1] => 5701 [code] => 5701 [2] => [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]Changed database context to 'DB_NAME'. [message] => [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]Changed database context to 'DB_NAME'. ) [2] => Array ( [0] => 01000 [SQLSTATE] => 01000 [1] => 5703 [code] => 5703 [2] => [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]Changed language setting to us_english. [message] => [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]Changed language setting to us_english. ) )
所有的驱动都安装好了。 SQL 服务器扩展在 php.ini
中很好。
使用 odbc_connect
连接有效,但随后我无法使用它,因为我的项目在 codeIgniter 4 上并且不支持 odbc。
当我输入错误的密码时会显示一条错误消息,所以我不明白为什么它让我无法建立。
感谢您的帮助。
好问题解决了。
我正从 ODBC 驱动程序 11 转到 ODBC 驱动程序 17,我认为版本 11 与 php.
的新版本不兼容
问题,您提供的这个代码示例是 PHP 手册中逐字逐句的。您是否真的更改了特定数据库的连接字符串中的参数?
此外,请参考此页面以确保您已正确安装所有内容。
https://www.php.net/manual/en/sqlsrv.requirements.php
我想与 PHP 建立 SQL 服务器连接。 我使用下面的代码
<?php
$serverName = "serverName\sqlexpress"; //serverName\instanceName
$connectionInfo = array( "Database"=>"dbName", "UID"=>"userName", "PWD"=>"password");
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn ) {
echo "Connection established.<br />";
}else{
echo "Connection could not be established.<br />";
die( print_r( sqlsrv_errors(), true));
}
?>
他们return给我这个
Connection could not be established.
Array ( [0] => Array ( [0] => IM006 [SQLSTATE] => IM006 [1] => 0 [code] => 0 [2] => [Microsoft][Gestionnaire de pilotes ODBC] �chec SQLSetConnectAttr du pilote [message] => [Microsoft][Gestionnaire de pilotes ODBC] �chec SQLSetConnectAttr du pilote ) [1] => Array ( [0] => 01000 [SQLSTATE] => 01000 [1] => 5701 [code] => 5701 [2] => [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]Changed database context to 'DB_NAME'. [message] => [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]Changed database context to 'DB_NAME'. ) [2] => Array ( [0] => 01000 [SQLSTATE] => 01000 [1] => 5703 [code] => 5703 [2] => [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]Changed language setting to us_english. [message] => [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]Changed language setting to us_english. ) )
所有的驱动都安装好了。 SQL 服务器扩展在 php.ini
中很好。
使用 odbc_connect
连接有效,但随后我无法使用它,因为我的项目在 codeIgniter 4 上并且不支持 odbc。
当我输入错误的密码时会显示一条错误消息,所以我不明白为什么它让我无法建立。
感谢您的帮助。
好问题解决了。 我正从 ODBC 驱动程序 11 转到 ODBC 驱动程序 17,我认为版本 11 与 php.
的新版本不兼容问题,您提供的这个代码示例是 PHP 手册中逐字逐句的。您是否真的更改了特定数据库的连接字符串中的参数?
此外,请参考此页面以确保您已正确安装所有内容。 https://www.php.net/manual/en/sqlsrv.requirements.php