在PHP/MySQLi 中使用預存程序檢索多個結果集
處理傳回多個結果集的預存程序時,前進到後續結果在MySQLi 中可能是一個挑戰。
問題:
您有一個包含多個結果的預存程序,並且想要使用 PHP/MySQLi 檢索第二個結果集。然而,使用 mysqli_next_result() 似乎並不能有效地運作。
解決方案:
要成功從預存程序擷取多個結果:
準備並執行預存程序:
<code class="php">$stmt = mysqli_prepare($db, 'CALL multiples(?, ?)'); mysqli_stmt_bind_param($stmt, 'ii', $param1, $param2); mysqli_stmt_execute($stmt);</code>
取得第一個結果集:
<code class="php">$result1 = mysqli_stmt_get_result($stmt); while ($row = $result1->fetch_assoc()) { // Process first result set }</code>
前進到下一個結果集:
<code class="php">mysqli_stmt_next_result($stmt);</code>
取得第二個結果集:
<code class="php">$result2 = mysqli_stmt_get_result($stmt); while ($row = $result2->fetch_assoc()) { // Process second result set }</code>
關閉語句:
<code class="php">mysqli_stmt_close($stmt);</code>
附加說明:
以上是如何從 PHP/MySQLi 中的預存程序檢索多個結果集?的詳細內容。更多資訊請關注PHP中文網其他相關文章!