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

mysql_data_seek pdo setara

Jawaban yang biasa adalah:apakah data Anda langsung dicari di array PDOStatement::fetchAll ... Tapi SALAH JIKA kueri mengambil banyak data (!).

Ada 2 solusi nyata,

1) jika basis data mengizinkan gunakan PDO::FETCH_ORI_ABS atau PDO::FETCH_ORI_REL ,contoh,

$result = $sth->fetch(PDO::FETCH_ASSOC, PDO::FETCH_ORI_ABS, 973);

(EDIT) Tapi, seperti yang dikomentari oleh @ChoiZ, memiliki batasan PDO-MySQL :"MySQL tidak mendukung kursor " (di luar program tersimpan) "dan driver tidak dapat menirunya untuk Anda"... Coba nanti atau dengan fork MySQL, seperti MariaDB.

2) gunakan solusi database (semacam pagination). Contoh:

SELECT a, b FROM table LIMIT 1, 973 



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQLite lebih cepat dari MySQL?

  2. Status offline pengguna online - masalah status offline

  3. Di mana set Hasil disimpan saat bekerja dengan jdbc dan driver Oracle

  4. mySQL - Penguncian tabel vs Penguncian baris

  5. Cara menghapus baris duplikat dan memperbarui tabel