Λειτουργία mysql_unbuffered_query() PHP

Ορισμός και χρήση

mysql_unbuffered_query() λειτουργία στέλνει μια ερώτηση SQL στο MySQL (χωρίς να αποθηκεύσει / να αποθηκεύσει τα αποτελέσματα).

Γλώσσα

mysql_unbuffered_query(ερώτηση,σύνδεση)
Παράμετροι Περιγραφή
ερώτηση Απαιτητικό. Ορίζει την ερώτηση SQL που πρέπει να σταλεί. Σημείωση: η αλφαριθμητική αλυσίδα ερώτησης δεν πρέπει να τελειώνει με τελεία και κόμμα.
σύνδεση Προαιρετικό. Ορίζει το σήμα συνδέσμου SQL. Αν δεν οριστεί, χρησιμοποιείται η τελευταία ανοιχτή σύνδεση.

Σημείωση

mysql_unbuffered_query() στέλνει μια ερώτηση SQL στο MySQL, αλλά δεν όπως mysql_query() αυτόματα να αποθηκεύονται και να κached οι συλλογές αποτελεσμάτων. Μια πλευρά, αυτό εξοικονομεί σημαντική μνήμη όταν επεξεργάζεστε μεγάλα σύνολα αποτελεσμάτων. Από την άλλη πλευρά, μπορείτε να επεξεργαστείτε το σύνολο αποτελεσμάτων αμέσως μετά την απόκτηση της πρώτης γραμμής, χωρίς να περιμένετε να εκτελεστεί ολόκληρη η ερώτηση SQL.

Όταν χρησιμοποιείτε πολλαπλές βάσεις δεδομένων σύνδεσης, πρέπει να καθορίσετε προαιρετικούς παράμετρος σύνδεση

Συμβουλές και σημειώσεις

Σημείωση:Το πλεονέκτημα του mysql_unbuffered_query() έχει κόστος: Δεν μπορεί να χρησιμοποιηθεί mysql_num_rows() και mysql_data_seek()Επιπλέον, πριν από την αποστολή μιας νέας ερώτησης SQL στο MySQL, πρέπει να εξάγουν όλες τις μη κached SQL ερωτήσεις που παράγουν τις γραμμές αποτελεσμάτων.

Παράδειγμα

<?php
$con = mysql_connect("localhost","mysql_user","mysql_pwd");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }
// Μεγάλη ερώτηση
$sql = "SELECT * FROM Person";
mysql_unbuffered_query($sql,$con);
// Ξεκινά η επεξεργασία δεδομένων...
mysql_close($con);
?>