Php/docs/mysqli-stmt.attr-set
mysqli_stmt::attr_set
mysqli_stmt_attr_set
(PHP 5, PHP 7)
mysqli_stmt::attr_set -- mysqli_stmt_attr_set — Used to modify the behavior of a prepared statement
说明
面向对象风格
public mysqli_stmt::attr_set
( int $attr
, int $mode
) : bool
过程化风格
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
仅以过程化样式:由 mysqli_stmt_init() 返回的 statement 标识。
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() toupdate 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 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 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.