mysqli_stmt::attr_set
mysqli_stmt_attr_set
Used to modify the behavior of a prepared statement
Description
Object oriented style
bool mysqli_stmt::attr_set
( int $attr
, int $mode
)
bool mysqli_stmt_attr_set
( mysqli_stmt $stmt
, int $attr
, int $mode
)
Parameters
-
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:
Attribute 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.