sqlsrv_next_result
(사용 가능한 버전 정보가 없으며 Git에만 있을 수 있음)
sqlsrv_next_result — 지정된 문의 다음 결과를 활성화합니다.
sqlsrv_next_result(resource $stmt
): mixed
지정된 문의 다음 결과를 활성화합니다. 결과에는 결과 세트, 행 수 및 출력 매개변수가 포함됩니다.
매개변수
stmt
- 다음 결과가 호출되는 문입니다.
반환 값
다음 결과가 성공적으로 검색되면 true
를 반환하고 오류가 발생하면 false
를 반환하고 검색할 결과가 더 이상 없으면 null
을 반환합니다.
Examples
예제 #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);
// Consume the first result (rows affected by INSERT) without calling sqlsrv_next_result.
echo "Rows affected: ".sqlsrv_rows_affected($stmt)."<br />";
// Move to the next result and display results.
$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 "No more results.<br />";
} else {
die(print_r(sqlsrv_errors(), true));
}
?>
기타
- sqlsrv_query() - 쿼리 준비 및 실행
- sqlsrv_fetch_array() - 행을 배열로 반환
- sqlsrv_rows_affected() - 마지막으로 실행된 INSERT, UPDATE 또는 DELETE 쿼리에 의해 수정된 행 수를 반환합니다.