sqlsrv_next_result

(No version information available, might only be in Git)

sqlsrv_next_resultДелает активным следующий результат указанного оператора

Описание

sqlsrv_next_result(resource$stmt): mixed

Делает активным следующий результат указанного оператора. Результаты включают наборы результатов, количество строк и выходные параметры.

Список параметров

stmt

Оператор, по которому вызывается следующий результат.

Возвращаемые значения

Возвращает true, если следующий результат был успешно получен, false, если произошла ошибка и null, если результатов для получения больше нет.

Примеры

Пример #1 Пример использования sqlsrv_next_result()

В следующем примере выполняется пакетный запрос, который добавляет записи в таблицу, а затем выбирает данные из таблицы. Это даёт два результата оператора: один для строк, на которые влияет INSERT, и один для строк, возвращаемых SELECT. Чтобы перейти к строкам, возвращаемым SELECT, необходимо вызвать sqlsrv_next_result(), чтобы пройти мимо первого результата.

<?php
$serverName
= "serverName\sqlexpress";
$connectionInfo = array("Database"=>"dbName", "UID"=>"userName", "PWD"=>"password");
$conn = sqlsrv_connect( $serverName, $connectionInfo);

$query = "INSERT INTO Table_1 (id, data) VALUES (?,?); SELECT * FROM TABLE_1;";
$params = array(1, "some data");
$stmt = sqlsrv_query($conn, $query, $params);

// Использовать первый результат (строки, затронутые INSERT) без вызова sqlsrv_next_result.
echo "Затронуто строк: ".sqlsrv_rows_affected($stmt)."<br />";

// Переход к следующему результату и отображение результатов.
$next_result = sqlsrv_next_result($stmt);
if(
$next_result ) {
while(
$row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC)){
echo
$row['id'].": ".$row['data']."<br />";
}
} elseif(
is_null($next_result)) {
echo
"Больше строк нет.<br />";
} else {
die(
print_r(sqlsrv_errors(), true));
}
?>

Смотрите также

  • sqlsrv_query() - Подготавливает и выполняет запрос
  • sqlsrv_fetch_array() - Возвращает строку как массив
  • sqlsrv_rows_affected() - Возвращает количество строк, изменённых последним выполненным запросом INSERT, UPDATE или DELETE
To Top