int mysql_stmt_store_result(MYSQL_STMT
*stmt)
Beschreibung
Sie können mysql_stmt_store_result()
für
jede Anweisung aufrufen, die eine Ergebnismenge erstellt
(SELECT
, SHOW
,
DESCRIBE
, EXPLAIN
),
sofern Sie die gesamte Ergebnismenge im Client puffern wollen,
damit der nachfolgende
mysql_stmt_fetch()
-Aufruf die gepufferten
Daten zurückgibt.
Es ist zwar nicht nötig,
mysql_stmt_store_result()
für andere
Anweisungen aufzurufen, aber es schadet auch nichts und hat
keine spürbaren Leistungseinbußen zur Folge. Ob die
Anweisung eine Ergebnismenge erzeugt hat, können Sie
ermitteln, indem Sie nachschauen, ob
mysql_stmt_result_metadata()
den Wert
NULL
zurückgibt. Weitere Informationen
gibt es unter Abschnitt 24.2.7.22, „mysql_stmt_result_metadata()
“.
Hinweis: MySQL berechnet nach
Voreinstellung nicht die
MYSQL_FIELD->max_length
für alle
Spalten in mysql_stmt_store_result()
, da
dieser Rechenaufwand
mysql_stmt_store_result()
deutlich
verlangsamen würde und die meisten Anwendungen auf
max_length
gut verzichten können. Wenn Sie
max_length
aktualisieren möchten, können
Sie dies mit mysql_stmt_attr_set(MYSQL_STMT,
STMT_ATTR_UPDATE_MAX_LENGTH, &flag)
ermöglichen. Siehe Abschnitt 24.2.7.3, „mysql_stmt_attr_set()
“.
Rückgabewerte
Null, wenn die Ergebnisse erfolgreich gepuffert wurden, und ein von null verschiedener Wert, wenn ein Fehler auftrat.
Fehler
CR_COMMANDS_OUT_OF_SYNC
Befehle wurden in der falschen Reihenfolge ausgeführt.
CR_OUT_OF_MEMORY
Speicherüberlauf.
CR_SERVER_GONE_ERROR
Der MySQL Server ist nicht mehr verfügbar.
CR_SERVER_LOST
Die Serververbindung brach während der Anfrage ab.
CR_UNKNOWN_ERROR
Ein unbekannter Fehler ist aufgetreten.
Dies ist eine Übersetzung des MySQL-Referenzhandbuchs, das sich auf dev.mysql.com befindet. Das ursprüngliche Referenzhandbuch ist auf Englisch, und diese Übersetzung ist nicht notwendigerweise so aktuell wie die englische Ausgabe. Das vorliegende deutschsprachige Handbuch behandelt MySQL bis zur Version 5.1.