Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

PDO gagal dengan terlalu banyak catatan, kueri buffer

Saat Anda menggunakan kueri tanpa buffer, itu berarti kumpulan hasil Anda sedang dialirkan dari server MySQL. Jadi, koneksi yang menjalankan kueri (tanpa buffer) sibuk hingga Anda membaca baris terakhir kueri. Dalam kasus Anda, koneksinya adalah $MysqlConn .

(Kueri yang dibuffer menyedot seluruh hasil ke dalam RAM program php Anda dan membebaskan koneksi. Anda menggunakan kueri yang tidak disangga ketika seluruh rangkaian hasil Anda tidak muat di RAM).

Kueri tanpa buffer harus ditutup secara eksplisit setelah Anda selesai melakukannya. Jadi tambahkan closeCursor() telepon . Seperti ini.

while ($row = $ordStat->fetch(PDO::FETCH_ASSOC)) {
    $order_ids[] = $row['order_id'];
}
$ordStat->closeCursor();

Tidak ada salahnya menutup kueri buffered juga. Itu kebiasaan yang baik.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara menarik data dari database MySQL ke dalam stylesheet di file/foldernya sendiri?

  2. SUBDATE() vs DATE_SUB() di MySQL:Apa Bedanya?

  3. Tingkat akses minimum untuk menjalankan prosedur tersimpan MySql

  4. Pembaruan Mysql berdasarkan keberadaan di tabel lain

  5. MySQL - Hapus nilai default untuk bidang Datetime