具有两个版本 PHP 的 ODBC 驱动程序
ODBC driver with two versions of PHP
我已经安装了 php 5.6 和一个已经存在的 php 5.5
除了连接到 sqlserver
之外,一切似乎都工作正常
这是我的测试php脚本:
$connectionInfo = array( "Database"=>"$DB", "UID"=>"$DBUSER", "PWD"=>"$DBPASS");
$cn = sqlsrv_connect($DBSERVER, $connectionInfo);
$strErrors = getSQLErrors();
if ($strErrors != "")
die($strErrors);
sqlsrv_close($cn);
function getSQLErrors($ignoreWarnings = false)
{
$retVal = "";
$err = sqlsrv_errors();
if ($err)
{
foreach( $err as $error )
{
if (!$ignoreWarnings || ($ignoreWarnings && $error['SQLSTATE'] != 1000)) // ignore warnings
$retVal .= "SQLSTATE: ".$error[ 'SQLSTATE'].". Code: ".$error[ 'code'].". Message: ".$error[ 'message']."\r\n\r\n";
}
}
return $retVal;
}
这是我得到的错误:
SQLSTATE: IMSSP. Code: -49. Message: This extension requires the Microsoft ODBC Driver 11 for SQL Server. Access the following URL t
o download the ODBC Driver 11 for SQL Server for x86: http://go.microsoft.com/fwlink/?LinkId=163712
SQLSTATE: IM002. Code: 0. Message: [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified
我的 ext 文件夹和 php.ini 中已有以下内容:
php_sqlsrv_56_nts.dll
php_pdo_sqlsrv_56_nts.dll
我有路径环境变量指向我的 5.6 php。
php.ini文件中的相关路径也都指向5.6版本
还有什么我需要注意的吗?在我拔掉所有头发之前,有人能帮帮我吗?
原来报错信息中提供的link不是我需要的
我需要的文件是msodbcsql.msi
可在以下位置找到:https://www.microsoft.com/en-us/download/details.aspx?id=36434
作为补充说明。 PHP 7 需要 Windows ODBC 驱动程序版本,该版本不适用于 win 2008 R2
我已经安装了 php 5.6 和一个已经存在的 php 5.5
除了连接到 sqlserver
之外,一切似乎都工作正常这是我的测试php脚本:
$connectionInfo = array( "Database"=>"$DB", "UID"=>"$DBUSER", "PWD"=>"$DBPASS");
$cn = sqlsrv_connect($DBSERVER, $connectionInfo);
$strErrors = getSQLErrors();
if ($strErrors != "")
die($strErrors);
sqlsrv_close($cn);
function getSQLErrors($ignoreWarnings = false)
{
$retVal = "";
$err = sqlsrv_errors();
if ($err)
{
foreach( $err as $error )
{
if (!$ignoreWarnings || ($ignoreWarnings && $error['SQLSTATE'] != 1000)) // ignore warnings
$retVal .= "SQLSTATE: ".$error[ 'SQLSTATE'].". Code: ".$error[ 'code'].". Message: ".$error[ 'message']."\r\n\r\n";
}
}
return $retVal;
}
这是我得到的错误:
SQLSTATE: IMSSP. Code: -49. Message: This extension requires the Microsoft ODBC Driver 11 for SQL Server. Access the following URL t
o download the ODBC Driver 11 for SQL Server for x86: http://go.microsoft.com/fwlink/?LinkId=163712
SQLSTATE: IM002. Code: 0. Message: [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified
我的 ext 文件夹和 php.ini 中已有以下内容:
php_sqlsrv_56_nts.dll
php_pdo_sqlsrv_56_nts.dll
我有路径环境变量指向我的 5.6 php。
php.ini文件中的相关路径也都指向5.6版本
还有什么我需要注意的吗?在我拔掉所有头发之前,有人能帮帮我吗?
原来报错信息中提供的link不是我需要的
我需要的文件是msodbcsql.msi
可在以下位置找到:https://www.microsoft.com/en-us/download/details.aspx?id=36434
作为补充说明。 PHP 7 需要 Windows ODBC 驱动程序版本,该版本不适用于 win 2008 R2