0
我试着从存储过程中获取数据检索从SQL Server存储过程的数据,但它给了我一个错误,存储过程时,我经过一定的价值看起来像这样如何使用PHP
`DECLARE @return_value int
EXEC @return_value = [dbo].[sp_PersonAlerts_Get]
@Active = 1,
@StartWeek = NULL,
@PersonID = 0
SELECT 'Return Value' = @return_value
GO`
的PHP代码检索一个结果是:
<?php
$var_Active = 1;
$var_PersonID = 0;
$var_StartWeek = null;
$params = array(
array($var_Active, SQLSRV_PARAM_IN),
array($var_StartWeek, SQLSRV_PARAM_IN),
array($var_PersonID, SQLSRV_PARAM_IN)
);
$sp_name = "Exec sp_PersonAlerts_Get @Active = ?, @StartWeek = ?, @PersonID=?";
$stmt = sqlsrv_query($gaSql['link'], $sp_name, $params);// or die("<pre>" . print_r(sqlsrv_errors()) . "<br><br>$sp_name</pre>");
while($obj = sqlsrv_fetch_object($stmt)){
$var_StartDate = $obj->StartDate;
echo $var_StartDate;
}
?>
它给了我这个消息:
Array ([0] => Array ([0] => 01000 [SQLSTATE] => 01000 [1] => 0
[code] => 0 [2] => [Microsoft][ODBC Driver 13 for SQL Server][SQl Server]@StartWeek: 2017-09-24, @EndWk: 2017-09-30 [message] => [Microsoft][ODBC Driver 13 for SQL Server][SQL Server]@StartWeek: 2017-09-24, @EndWk: 2017-09-30))
谢谢在事先,我已经测试了连接和存储过程,他们都好,但我似乎无法找到代码中的错误。