Verändert das Verhalten einer vorbereiteten Anweisung (prepared statement)

# mysqli_stmt::attr_set

# mysqli_stmt_attr_set

(PHP 5, PHP 7, PHP 8)

mysqli_stmt::attr_set -- mysqli_stmt_attr_set — Verändert das Verhalten einer vorbereiteten Anweisung (prepared statement)

### Beschreibung

Objektorientierter Stil

public function mysqli_stmt::attr_set(int `$attribute`, int `$value`): bool

Prozeduraler Stil

function mysqli_stmt_attr_set(mysqli_stmt `$statement`, int `$attribute`, int `$value`): bool

Wird verwendet, um das Verhalten einer vorbereiteten Anweisung (prepared statement) zu verändern. Die Funktion kann mehrmals aufgerufen werden, um verschiedene Attribute zu setzen.

### Parameter-Liste

`statement`

  Nur bei prozeduralem Aufruf: ein von mysqli_stmt_init() zurückgegebenes mysqli_stmt-Objekt.

`attribute`

  Das Attribut, das gesetzt werden soll. Es kann einen der folgenden Werte haben:

  Attribut-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. `value` kann `MYSQLI_CURSOR_TYPE_NO_CURSOR` (Voreinstellung) oder `MYSQLI_CURSOR_TYPE_READ_ONLY` sein.
  MYSQLI_STMT_ATTR_PREFETCH_ROWS | Die Anzahl der Datensätze, die auf einmal vom Server abgerufen werden, wenn ein Cursor verwendet wird. `value` kann zwischen 1 und dem Maximalwert von unsigned long (einschließlich) liegen. Die Voreinstellung ist 1. Entfernt in PHP 8.4.0.

  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 alle offenen Cursor, bevor die Anweisung für die Wiederausführung vorbereitet wird. mysqli_stmt_free_result() schließt alle offenen Cursor.

  Wenn ein Cursor für eine Anweisung geöffnet wird, dann ist mysqli_stmt_store_result() unnötig.

`value`

  Der Wert, der dem Attribut zugewiesen werden soll.

### Rückgabewerte

Gibt bei Erfolg `true` zurück. Bei einem Fehler wird `false` zurückgegeben.

### Fehler/Exceptions

If mysqli error reporting is enabled (`MYSQLI_REPORT_ERROR`) and the requested operation fails, a warning is generated. If, in addition, the mode is set to `MYSQLI_REPORT_STRICT`, a mysqli_sql_exception is thrown instead.

### Siehe auch

- » Connector/MySQL mysql_stmt_attr_set()

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open