my_bool mysql_stmt_bind_param(MYSQL_STMT *stmt,
MYSQL_BIND *bind)
Beschreibung
Die Funktion mysql_stmt_bind_param()
bindet
Daten an die Parametermarker in der SQL-Anweisung, die an
mysql_stmt_prepare()
übergeben wurde. Zur
Übergabe der Daten verwendet sie
MYSQL_BIND
-Strukturen.
bind
ist die Adresse eines Arrays von
MYSQL_BIND
-Strukturen. Die Clientbibliothek
erwartet, dass das Array für jeden
‘?
’-Parametermarker in der
Anfrage einen Wert enthält.
Angenommen, Sie bereiten folgende Anweisung vor:
INSERT INTO mytbl VALUES(?,?,?)
Wenn Sie die Parameter binden, muss das Array von
MYSQL_BIND
-Strukturen drei Elemente
enthalten. Es kann wie folgt deklariert werden:
MYSQL_BIND bind[3];
Die Bestandteile jedes MYSQL_BIND
-Elements,
das gesetzt werden muss, sind in
Abschnitt 24.2.5, „C-API: Prepared Statement-Datentypen“,
beschrieben.
Rückgabewerte
Null, wenn das Binden erfolgreich verlief. Ein von null verschiedener Wert, wenn ein Fehler auftrat.
Fehler
CR_INVALID_BUFFER_USE
Zeigt an, ob lange Daten beim Binden stückweise an einen Puffer übergeben werden, der kein String- oder Binärpuffer ist.
CR_UNSUPPORTED_PARAM_TYPE
Die Konvertierung wird nicht unterstützt. Eventuell ist
der buffer_type
-Wert unzulässig oder
hat keinen der unterstützten Typen.
CR_OUT_OF_MEMORY
Speicherüberlauf.
CR_UNKNOWN_ERROR
Ein unbekannter Fehler ist aufgetreten.
Beispiel
Wie man mysql_stmt_bind_param()
verwendet,
sehen Sie im Beispiel von
Abschnitt 24.2.7.10, „mysql_stmt_execute()
“.
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.