sql server — выполнение хранимой процедуры с sqlsrv в переполнении стека

Я выполняю хранимую процедуру, используя sqlsrv в коде PHP, как это:

    $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));
}

Хранимая процедура выполняется в БД успешно и делает то, что должна, но в моем php-коде я всегда проваливаюсь, если (stmt3 === false) получаю следующую ошибку:

     Array ( [0] => Array ( [0] => 01000 [SQLSTATE] => 01000 [1] => 0 [code] => 0 [2] => [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]0510620150922777 [message] => [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]0510620150922777 ) [1] => Array ( [0] => 01000 [SQLSTATE] => 01000 [1] => 0 [code] => 0 [2] => [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]UPDATE 004 [message] => [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]UPDATE 004 ) )

Что здесь не так? почему он выполняется хорошо, но драйвер обрабатывает эту ошибку?

0

Решение

Готово. Это была не ошибка, а просто предупреждение.
Однако sqlsrv рассматривает предупреждения как ошибки, если не указано иное с помощью:

    sqlsrv_configure("WarningsReturnAsErrors", 0);

Спасибо, в любом случае.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]