


Bagaimanakah Saya Boleh Dapatkan Berbilang Set Keputusan daripada Pertanyaan MySQL PDO Tunggal?
Nov 18, 2024 am 09:47 AMMengambil Berbilang Set Hasil daripada PDO Berbilang Pertanyaan
Pemandu PDO_MYSQLND memperkenalkan sokongan untuk berbilang pertanyaan dalam PHP versi 5.3. Ini membolehkan pengguna melaksanakan berbilang pertanyaan SQL serentak. Walau bagaimanapun, mendapatkan semula semua set hasil daripada pertanyaan ini boleh menjadi mencabar.
Pernyataan Masalah
Pertanyaan "PILIH 1; PILIH 2;" akan melaksanakan kedua-dua pertanyaan, tetapi hanya set hasil pertanyaan pertama dikembalikan. Set hasil kedua nampaknya dibuang.
Penyelesaian
Untuk mendapatkan berbilang set hasil, kaedah PDOStatement::nextRowset mesti digunakan. Kaedah ini memajukan kursor ke permulaan set baris seterusnya. Dengan memanggil nextRowset selepas pertanyaan pertama, pengguna boleh mengakses set hasil pertanyaan kedua.
$stmt = $db->query("SELECT 1; SELECT 2;"); $stmt->nextRowset(); var_dump($stmt->fetchAll(PDO::FETCH_ASSOC));
Ini akan mengembalikan set keputusan untuk pertanyaan kedua.
Kelebihan dan Kelemahan
Pelaksanaan ini membolehkan untuk mengambil setiap hasil pertanyaan menggunakan gaya FETCH yang berbeza. Walau bagaimanapun, ia boleh menjadi lebih kompleks daripada pelaksanaan yang hanya mengembalikan semua set hasil di bawah satu tatasusunan. Namun begitu, keupayaan untuk mengendalikan berbilang hasil secara fleksibel boleh menjadi berharga dalam sesetengah senario.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Dapatkan Berbilang Set Keputusan daripada Pertanyaan MySQL PDO Tunggal?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Artikel Panas

Alat panas Tag

Artikel Panas

Tag artikel panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Kurangkan penggunaan memori MySQL di Docker

Bagaimana anda mengubah jadual di MySQL menggunakan pernyataan Alter Table?

Cara menyelesaikan masalah MySQL tidak dapat membuka perpustakaan bersama

Apa itu SQLite? Gambaran Keseluruhan Komprehensif

Jalankan MySQL di Linux (dengan/tanpa bekas podman dengan phpmyadmin)

Menjalankan Pelbagai Versi MySQL di MacOS: Panduan Langkah demi Langkah

Bagaimanakah saya menjamin MySQL terhadap kelemahan biasa (suntikan SQL, serangan kekerasan)?

Bagaimana saya mengkonfigurasi penyulitan SSL/TLS untuk sambungan MySQL?
