PHP mysql_unbuffered_query() Funktion
Definition und Verwendung
Die mysql_unbuffered_query() Funktion sendet eine SQL-Abfrage an MySQL (ohne Ergebnisse zu speichern/cachen).
Syntax
mysql_unbuffered_query(query,Verbindung)
Parameter | Beschreibung |
---|---|
query | Notwendig. Legt die zu sendende SQL-Abfrage fest. Anmerkung: Die Abfragezeichenkette sollte nicht mit einem Semikolon enden. |
Verbindung | Optional. Legt den SQL-Verbindungsbezeichner fest. Wenn nicht festgelegt, wird die letzte geöffnete Verbindung verwendet. |
Beschreibung
mysql_unbuffered_query() sendet einen SQL-Abfrage query an MySQL, aber anders als mysql_query() , um die Ergebnisse automatisch zu erwerben und zu cachen. Einerseits spart dies bei der Verarbeitung großer Ergebnissätze erheblich Speicherplatz. Andererseits kann das Ergebnissatz sofort nach dem Erhalt der ersten Zeile bearbeitet werden, ohne dass auf das vollständige Ausführen des SQL-Befehls warten müssen.
Wenn mehrere Datenbankverbindungen verwendet werden, muss ein optionaler Parameter angegeben werden Verbindung.
Hinweise und Anmerkungen
Anmerkung:Der Vorteil von mysql_unbuffered_query() hat jedoch einen Preis: Auf dem Ergebnisset von mysql_unbuffered_query() kann nicht zugegriffen werden mysql_num_rows() und mysql_data_seek(). Außerdem müssen alle noch nicht zwischengespeicherten SQL-Abfrageergebnisse extrahiert werden, bevor eine neue SQL-Abfrage an MySQL gesendet wird.
Beispiel
<?php $con = mysql_connect("localhost","mysql_user","mysql_pwd"); if (!$con) { die('Could not connect: ' . mysql_error()); } // Große Abfrage $sql = "SELECT * FROM Person"; mysql_unbuffered_query($sql,$con); // Datenverarbeitung beginnt... mysql_close($con); ?>