mysql_unbuffered_query
(PHP 4 >= 4.0.6, PHP 5)
mysql_unbuffered_query — Sendet eine SQL-Anfrage an MySQL, ohne Ergebniszeilen abzuholen und zu puffern
Diese Erweiterung ist seit PHP 5.5.0 als veraltet markiert und wurde in PHP 7.0.0 entfernt. Verwenden Sie stattdessen die Erweiterungen MySQLi oder PDO_MySQL. Weitere Informationen finden Sie im Ratgeber MySQL: Auswahl einer API. Alternativen zu dieser Funktion umfassen:
Beschreibung
$query
, resource $link_identifier
= NULL): resource
mysql_unbuffered_query() sendet die SQL-Abfrage
query
an MySQL, ohne dass die Datensätze des
Ergebnisses automatisch geholt und gepuffert werden, wie es bei der
Verwendung von mysql_query() der Fall ist. Dies spart
eine erhebliche Menge an Speicher bei SQL-Abfragen ein, die große
Ergebnismengen zurückgeben und Sie können unmittelbar mit dem
Abfrageergebnis arbeiten, sobald der erste Datensatz gefunden wurde: Sie
müssen nicht darauf warten, bis die gesamte SQL-Abfrage abgeschlossen ist.
Um mysql_unbuffered_query() verwenden zu können während
mehrere Datenbankverbindungen geöffnet sind, müssen Sie den optionalen
Parameter link_identifier
angeben, um zu
identifizieren, welche Verbindung Sie verwenden möchten.
Parameter-Liste
-
query
-
Die auszuführende SQL-Abfrage.
Werte innerhalb der Abfrage sollten mit korrekt maskiert sein.
-
Verbindungs-Kennung
-
Die MySQL-Verbindung. Wird die Verbindungskennung nicht angegeben, wird die letzte durch mysql_connect() geöffnete Verbindung angenommen. Falls keine solche Verbindung gefunden wird, wird versucht, eine Verbindung aufzubauen, wie es beim Aufruf von mysql_connect() ohne Angabe von Argumenten der Fall wäre. Falls zufällig keine Verbindung gefunden oder aufgebaut werden kann, wird eine Warnung der Stufe
E_WARNING
erzeugt.
Rückgabewerte
Für SELECT-, SHOW-, DESCRIBE- oder EXPLAIN-Anweisungen gibt
mysql_unbuffered_query() bei Erfolg eine Ressource
zurück oder false
bei einem Fehler.
Für alle anderen von SQL-Anweisungen wie INSERT, UPDATE, DELETE, DROP, etc,
gibt mysql_unbuffered_query() bei Erfolg true
zurück
oder false
bei Fehlern.
Anmerkungen
Hinweis:
Die Vorteile von mysql_unbuffered_query() haben ihren Preis: Auf ein Ergebnis von mysql_unbuffered_query() können die Funktionen mysql_num_rows() und mysql_data_seek() nicht angewendet werden. Ausserdem müssen Sie sicherstellen, dass Sie alle Datensätze des Ergebnisses einer ungepufferten SQL-Abfrage abgeholt haben. Erst dann können Sie eine neue SQL-Abfrage bei Verwendung derselben Verbindung
link_identifier
an MySQL absetzen.