(PHP 5, PHP 7)
mysqli_stmt::attr_set -- mysqli_stmt_attr_set — Used to modify the behavior of a prepared statement
Object oriented style
public mysqli_stmt::attr_set ( int $attr , int $mode ) : bool
Procedural style
mysqli_stmt_attr_set ( mysqli_stmt $stmt , int $attr , int $mode ) : bool
Used to modify the behavior of a prepared statement. This function may be called multiple times to set several attributes.
stmt
Procedural style only: A statement identifier returned by mysqli_stmt_init().
attr
The attribute that you want to set. It can have one of the following values:
Character | Description |
---|---|
MYSQLI_STMT_ATTR_UPDATE_MAX_LENGTH | Setting to true causes mysqli_stmt_store_result() to update the metadata MYSQL_FIELD->max_length value. |
MYSQLI_STMT_ATTR_CURSOR_TYPE | Type of cursor to open for statement when mysqli_stmt_execute() is invoked. mode can be MYSQLI_CURSOR_TYPE_NO_CURSOR (the default) or MYSQLI_CURSOR_TYPE_READ_ONLY . |
MYSQLI_STMT_ATTR_PREFETCH_ROWS | Number of rows to fetch from server at a time when using a cursor. mode can be in the range from 1 to the maximum value of unsigned long. The default is 1. |
If you use the MYSQLI_STMT_ATTR_CURSOR_TYPE
option with MYSQLI_CURSOR_TYPE_READ_ONLY
, a cursor is opened for the statement when you invoke mysqli_stmt_execute(). If there is already an open cursor from a previous mysqli_stmt_execute() call, it closes the cursor before opening a new one. mysqli_stmt_reset() also closes any open cursor before preparing the statement for re-execution. mysqli_stmt_free_result() closes any open cursor.
If you open a cursor for a prepared statement, mysqli_stmt_store_result() is unnecessary.
mode
The value to assign to the attribute.
© 1997–2020 The PHP Documentation Group
Licensed under the Creative Commons Attribution License v3.0 or later.
https://www.php.net/manual/en/mysqli-stmt.attr-set.php