我调用了一个例程来执行mssql和mysql服务器连接,如下所示:
$mysql_aoi_conn = DoMySQLConnect( 'AOI' );
$mssql_aoi_conn = DoMsSQLConnect( 'itf' );其功能如下:
function DoMySQLConnect( $pdb_name ){
$mysql_conn = mysql_connect('localhost', '####', '####') or die( 'could not connect to localhost server : ' . mysql_error() );
$mysqldb_conn = mysql_select_db( $pdb_name, $mysql_conn ) or die('could not use database ' . $pdb_name . ' : ' . mysql_error() );
return array("database" => $mysqldb_conn, "connection" => $mysql_conn );
};
function DoMsSQLConnect( $pdb_name ){
$mssql_conn = mssql_connect("128.251.xxx.xxx", '###', '###') or die("failed to connect to server USLONSAPP003");
$mssqldb_conn = mssql_select_db( $pdb_name, $mssql_conn) or die("failed to select database " . $pdb_name);
return array("database" => $mssqldb_conn, "connection" => $mssql_conn );
};我试图在mssql_query和mysql_query中使用连接实现来告诉我的查询使用哪个连接,但是我得到了一个错误。以下是我的一个问题:
$login_res = mssql_query("SELECT *
FROM ITF_USER
WHERE ITF_LOGIN = '" . $lcUserName . "'", $mssql_aoi_conn['connection'] )
or die("failed to query ITF_USER: \n" . mssql_get_last_message() );这会随着:Changed database context to 'itf'.的mssql_get_last_message()而终止,这并不是真正的错误。有人能告诉我我使用这个查询选项是不是错了吗?
发布于 2011-09-07 20:37:14
经过一些研究,mssql_query()似乎不支持link_identifier选项,因此中断(尽管调试时没有出现有效的错误)。删除mssql_query的链接标识符并在文档中为任何mysql_query()保留它,这样我就可以在整个脚本中同时使用mssql_query()和mysql_query()命令。
发布于 2014-03-19 09:52:35
尽管您已经解决了问题,但在PHP语言中使用mssql_exec()函数时,我遇到了类似的错误“数据库上下文已更改”。它似乎可以通过设置以下内容来修复:
sqlsrv_configure ( "WarningsReturnAsErrors" , 0 ); //OFF
sqlsrv_configure ( "LogSeverity" , 1 ); //SQLSRV_LOG_SEVERITY_ERROR在此之前,我使用DATABASE.dbo.TABLE来防止收到大量关于此类错误/警告的报告。
https://stackoverflow.com/questions/6511913
复制相似问题