Rumah > pembangunan bahagian belakang > tutorial php > Bagaimanakah anda mendapatkan beberapa set hasil daripada prosedur tersimpan dalam PHP/mysqli?

Bagaimanakah anda mendapatkan beberapa set hasil daripada prosedur tersimpan dalam PHP/mysqli?

DDD
Lepaskan: 2024-11-01 18:45:02
asal
904 orang telah melayarinya

How do you retrieve multiple result sets from a stored procedure in PHP/mysqli?

Mendapatkan Berbilang Set Hasil dengan Prosedur Tersimpan dalam PHP/mysqli

Dalam PHP/MySQLi, melaksanakan prosedur tersimpan dengan berbilang set hasil memerlukan berhati-hati pengendalian. Untuk maju ke set hasil kedua selepas melaksanakan prosedur tersimpan, anda mesti:

  1. Guna mysqli_stmt_execute: Laksanakan prosedur tersimpan menggunakan mysqli_stmt_execute.
  2. Ambil set hasil pertama:
  3. Panggil mysqli_stmt_get_result untuk mendapatkan set hasil pertama dan baca datanya menggunakan fetch_assoc, fetch_array atau fetch_row.
  4. Alih ke set hasil seterusnya:
  5. Selepas membaca set hasil pertama, panggil mysqli_stmt_next_result untuk beralih ke set hasil seterusnya.
  6. Ambil set hasil kedua:
  7. Panggil mysqli_stmt_get_result sekali lagi untuk mendapatkan set hasil kedua dan baca datanya.

Berikut ialah contoh kod menggunakan PHP/MySQLi:
<code class="php">$stmt = mysqli_prepare($db, 'CALL multiples(?, ?)');
mysqli_stmt_bind_param($stmt, 'ii', $param1, $param2);
mysqli_stmt_execute($stmt);

// Fetch the first result set
$result1 = mysqli_stmt_get_result($stmt);
while ($row = $result1->fetch_assoc()) {
    printf("%d\n", $row['id']);
}

// Move to the second result set
mysqli_stmt_next_result($stmt);
$result2 = mysqli_stmt_get_result($stmt);
while ($row = $result2->fetch_assoc()) {
    printf("%d\n", $row['id']);
}

mysqli_stmt_close($stmt);</code>
Salin selepas log masuk

Kod ini berjaya mendapatkan dan mencetak data daripada kedua-dua set hasil dalam prosedur tersimpan yang ditentukan.

Atas ialah kandungan terperinci Bagaimanakah anda mendapatkan beberapa set hasil daripada prosedur tersimpan dalam PHP/mysqli?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan