我想在脚本中使用两个带有一个白银的数据库,但查询不起作用。 我的关系:
$serverName = "12.354.25.5"; //serverName\instanceName
//first
$connectionInfo = array( "Database"=>"GRQ", "UID"=>"RFUser", "PWD"=>"****", "CharacterSet" => "UTF-8");
global $con;
$con = sqlsrv_connect( $serverName, $connectionInfo);
//second
$connectionpyr = array( "Database"=>"PiF", "UID"=>"greystone", "PWD"=>"****", "CharacterSet" => "UTF-8");
global $conpyr;
$conpyr = sqlsrv_connect( $serverName, $connectionpyr);
第一个连接工作正常,我使用select来获取数据:
$SQL = "SELECT id,col1,col8,col9 FROM [dbo].[RF_TableWHERE ID=".$data[$k]."";
$result = sqlsrv_query($con,$SQL); //it work fine
使用第二个连接,我尝试执行存储过程,
$VER = "DECLARE @Debt MONEY, @ResultMsg NVARCHAR(255)
EXEC Pyramid.dbo.CheckDebt @AccountNumber =".$numlic.", -- int
@PeriodFrom = '".$dstart."', -- date
@PeriodTo = '".$dend."', -- date
@Debt = @Debt OUTPUT, -- money
@ResultMsg = @ResultMsg OUTPUT -- nvarchar(500)
";
$result2 = sqlsrv_query($conpyr,$VER);
但只获得
将无效参数传递给sqlsrv_query。
连接2的资源ID为空(无)
如何解决这个问题?
答案 0 :(得分:0)
如果您有多个数据库连接,则应在开始连接到db2之前关闭connection1。