在PHP中使用sqlsrv执行存储过程

时间:2015-11-13 19:19:51

标签: php sql-server sql-server-2008-r2 sqlsrv

我在php代码中使用sqlsrv执行存储过程,如下所示:

<d3d11.h>

存储过程在DB中成功执行并完成它必须做的事情,但在我的php代码中,如果(stmt3 === false)收到以下错误,我总是陷入故障:

    $tsql_callSP = "{call cnt.stproc1(?)}";
    $rotCode = '1111';
    $params = array( 
                     array($rotCode, SQLSRV_PARAM_IN),
                   );

    $serverName = "xxxxxxx\wwwwwww"; //serverName\instanceName
    $connectionInfo = array( "Database"=>"aaaaaaaaaaa", "UID"=>"bbbbbbb", "PWD"=>"ccccccc");
    $conn = sqlsrv_connect( $serverName, $connectionInfo);

    /* Execute the query. */
    $stmt3 = sqlsrv_query( $conn, $tsql_callSP, $params);
    if( $stmt3 === false )
    {
         echo "Error in executing statement 3.\n";
         die( print_r( sqlsrv_errors(), true));
    }

这里有什么问题?为什么它会很好地执行,但驱动程序会处理我这个错误?

1 个答案:

答案 0 :(得分:1)

完成。这不是一个错误,只是一个警告。 但是,sqlsrv会将警告视为错误,除非另有说明:

    sqlsrv_configure("WarningsReturnAsErrors", 0);

非常感谢。