【发布时间】:2016-05-26 09:41:22
【问题描述】:
您好,我有一个问题,我没有收到来自存储过程的结果,我正在使用 php 和 mssql 数据库。
我可以在 sql server profiler 中看到查询,当我在 sql server 管理工具中运行该查询时,查询正常工作。
当我使用 php 查询时,我得到以下错误
Array ( [0] => Array ( [0] => IMSSP [SQLSTATE] => IMSSP [1] => -28 [code] => -28 [2] => The active result for the query contains no fields. [message] => The active result for the query contains no fields. ))
这是我的 php 代码 '如果 ($this->conn) {
$session_id = "9999912C8D74";
$patient_id = "9999912C8D74";
$days = 7;
$params = array (
array (
$session_id,
SQLSRV_PARAM_IN
),
array (
$patient_id,
SQLSRV_PARAM_IN
),
array (
$days,
SQLSRV_PARAM_IN
)
);
$tsql_callSP = "exec dbo.STOREDPROCEDURECALL @SessId=?, @PatId=?, @days=?";
$stmt3 = sqlsrv_query ( $this->conn, $tsql_callSP, $params );
if ($stmt3 === false)
{
echo "Error in executing statement 3.\n";
die ( print_r ( sqlsrv_errors (), true ) );
}
if( sqlsrv_fetch( $stmt3 ) === false)
{
die( print_r( sqlsrv_errors(), true));
}
$name = sqlsrv_get_field( $stmt3, 1);
echo "$name: ";
$comment = sqlsrv_get_field( $stmt3, 2);
echo $comment;
while ( $obj = sqlsrv_fetch_object ( $stmt3 ) ) {
var_dump ( $obj );
echo $obj->BGUM . "<br>";
}
}
我在 stackoverflow 上尝试了很多解决方案,但没有任何效果 :-(,任何建议都将不胜感激。谢谢。
【问题讨论】:
-
你的 SP 应该返回什么?一个值还是表?
-
您好,感谢您的回复,它应该返回一个表格
标签: php sql-server sql-server-2008 stored-procedures