即使sqlsrv_query没有错误,存储过程也不会获取数据

时间:2015-05-07 03:29:17

标签: php sql-server stored-procedures sqlsrv

我有一个包含2个参数的存储过程。我可以使用下面的相同脚本使用一个参数执行存储过程。但我无法使用两个参数。

$stmt = "{CALL VM_GETPRs_CAMPS (?,?)}";**//SP has 160 rows of data.**

$fdate=date("Y-m-d");
$tdate=date("Y-m-d");

$params = array( 
                 array($fdate,SQLSRV_PARAM_IN),
                 array($tdate,SQLSRV_PARAM_IN)                                               
               );

$result = sqlsrv_query( $conn, $stmt,$params,array('Scrollable' => 'buffered'));   //not getting any error 

if( $result === false) {
    die( print_r( sqlsrv_errors(), true) );
} else{
    **//**I tried sqlsrv_num_rows and sqlsrv_has_rows both are giving zero rows.**
    $row_count = sqlsrv_num_rows( $result );  
    if ($row_count === false)
        echo "No rows";
    else if ($row_count >=0)
      echo "\n$row_count\n";

if(sqlsrv_has_rows($result))
    echo "has rows";
else 
    echo "No rows";
exit();

我正在寻找一个解决方案,因为两天。请帮帮我。

1 个答案:

答案 0 :(得分:0)

您可以尝试

"execute VM_GETPRs_CAMPS ?,?"

如果存储过程上有任何PRINT语句,也会造成一些麻烦