(PHP 5, PHP 7)
mysqli_stmt::attr_set -- mysqli_stmt_attr_set — Wird verwendet, um das Verhalten einer vorbereiteten Anweisung (prepared statement) zu verändern.
Objektorientierter Stil
$attr
, int $mode
)Prozeduraler Stil
Wird verwendet, um das Verhalten einer vorbereiteten Anweisung (prepared statement) zu verändern. Die Funktion kann mehrmals aufgerufen werden, um verschiedene Attribute zu setzen.
stmt
Nur bei prozeduralem Aufruf: ein von mysqli_stmt_init() zurückgegebenes Statementobjekt.
attr
Das Attribut, das gesetzt werden soll. Es ist eines der folgenden Werte:
Konstante | Beschreibung |
---|---|
MYSQLI_STMT_ATTR_UPDATE_MAX_LENGTH |
Der Wert TRUE veranlasst mysqli_stmt_store_result(), die Meta-Information
MYSQL_FIELD->max_length zu aktualisieren.
|
MYSQLI_STMT_ATTR_CURSOR_TYPE |
Der Typ des Cursors, der für die Anweisung geöffnet wird, wenn
mysqli_stmt_execute() aufgerufen wird. mode kann
MYSQLI_CURSOR_TYPE_NO_CURSOR (Voreinstellung)
oder MYSQLI_CURSOR_TYPE_READ_ONLY sein.
|
MYSQLI_STMT_ATTR_PREFETCH_ROWS |
Anzahl der Zeilen, die auf einmal vom Server geholt werden, wenn ein Cursor benutzt wird.
mode kann zwischen 1 und dem Maximalwert von unsigned long
einschließlich liegen. Die Voreinstellung ist 1.
|
Wenn die Option MYSQLI_STMT_ATTR_CURSOR_TYPE mit MYSQLI_CURSOR_TYPE_READ_ONLY verwendet wird, dann wird ein Cursor für die Anweisung geöffnet, sobald mysqli_stmt_execute() aufgerufen wird. Wenn es schon einen offenen Cursor von einem vorherigen Aufruf von mysqli_stmt_execute() gibt, dann wird der Cursor geschlossen, bevor der neue geöffnet wird. mysqli_stmt_reset() schließt ebenfalls einen offenen Cursor, bevor die Anweisung für die Wiederausführung vorbereitet wird. mysqli_stmt_free_result() schließt einen offenen Cursor.
Wenn ein Cursor für eine Anweisung geöffnet wird, dann ist mysqli_stmt_store_result() unnötig.
mode
Der Wert, der dem Attribut zugewiesen werden soll.