mysqli_stmt::attr_set
, mysqli_stmt_attr_set
mysqli_stmt::attr_set
mysqli_stmt_attr_set
Used to modify the behavior of a prepared statement
Description
Object oriented stylebool mysqli_stmt::attr_set(int attr,
int mode);
Procedural stylebool mysqli_stmt_attr_set(mysqli_stmt stmt,
int attr,
int mode);
Used to modify the behavior of a prepared statement. This function may be called multiple times to set several attributes.
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:
Table 20.17. Attribute values
Character Description MYSQLI_STMT_ATTR_UPDATE_MAX_LENGTH If set to 1, causes mysqli_stmt_store_result
to update the metadataMYSQL_FIELD->max_length
value.MYSQLI_STMT_ATTR_CURSOR_TYPE Type of cursor to open for statement when mysqli_stmt_execute
is invoked.mode
can beMYSQLI_CURSOR_TYPE_NO_CURSOR
(the default) orMYSQLI_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 withMYSQLI_CURSOR_TYPE_READ_ONLY
, a cursor is opened for the statement when you invokemysqli_stmt_execute
. If there is already an open cursor from a previousmysqli_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.