mysqli_stmt::attr_set

mysqli_stmt_attr_set

(PHP 5, PHP 7, PHP 8)

mysqli_stmt::attr_set -- mysqli_stmt_attr_setИзменяет поведение подготовленного запроса

Описание

Объектно-ориентированный стиль

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

Процедурный стиль

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

Функция изменяет поведение подготовленного запроса. Функцию вызывают несколько раз для установки нескольких атрибутов.

Список параметров

stmt

Только для процедурного стиля: объект mysqli_stmt, который вернула функция mysqli_stmt_init().

attribute

Атрибут, который требуется установить. Атрибут принимает следующие значения:

Значения атрибута
Символ Описание
MYSQLI_STMT_ATTR_UPDATE_MAX_LENGTH Если значение равно true, то функция mysqli_stmt_store_result() обновляет метаданные значением MYSQL_FIELD->max_length.
MYSQLI_STMT_ATTR_CURSOR_TYPE Тип курсора, который нужно открыть для запроса при вызове функции mysqli_stmt_execute(). Параметр value принимает значения MYSQLI_CURSOR_TYPE_NO_CURSOR (по умолчанию) или MYSQLI_CURSOR_TYPE_READ_ONLY.
MYSQLI_STMT_ATTR_PREFETCH_ROWS Количество строк, которые необходимо получить с сервера с курсором за один раз. Параметр value принимает значения в диапазоне от 1 до максимального значения беззнакового целого числа long. По умолчанию значение равно 1.

Если опцию MYSQLI_STMT_ATTR_CURSOR_TYPE указали вместе с MYSQLI_CURSOR_TYPE_READ_ONLY, то курсор открывается для запроса при вызове функции mysqli_stmt_execute(). Если уже есть открытый курсор из предыдущего вызова функции mysqli_stmt_execute(), то курсор закроется перед открытием нового. Функция mysqli_stmt_reset() также закрывает любой открытый курсор перед подготовкой запроса к повторному выполнению. Функция mysqli_stmt_free_result() закрывает любой открытый курсор.

Если курсор открывается для подготовленного запроса, вызывать функцию mysqli_stmt_store_result() не обязательно.

value

Значение, которое функция присвоит атрибуту.

Возвращаемые значения

Функция возвращает true в случае успешного выполнения или false, если возникла ошибка.

Ошибки

Если уведомления об ошибках mysqli включены (MYSQLI_REPORT_ERROR) и запрошенная операция не удалась, выдаётся предупреждение. Если, кроме того, установлен режим MYSQLI_REPORT_STRICT, вместо этого будет выброшено исключение mysqli_sql_exception.

Смотрите также

add a note

User Contributed Notes 1 note

up
4
chad 0x40 digitellinc 0x2e com
16 years ago
This is basically a wrapper for mysql_stmt_attr_set in the MySQL C API: http://dev.mysql.com/doc/refman/5.0/en/mysql-stmt-attr-set.html
To Top