Класс BufferedStatement
Декоратор оператора, реализующий буферизацию результатов.
Этот декоратор оператора сохранит полученные результаты в памяти, позволяя итератору перематываться и повторно использоваться.
- Cake\Database\Statement\BufferedStatement реализует Iterator, Cake\Database\StatementInterface использует Cake\Database\TypeConverterTrait
Унаследованные константы
Резюме свойств
-
$_allFetchedprotectedЕсли true, все строки были полученыboolean - Драйвер оператора
$_driverprotected -
$_hasExecutedprotectedВыполнен ли операторboolean -
$bufferprotectedКэш в оперативной памяти, содержащий результаты предыдущих итераторовarray -
$indexprotectedТекущий индекс итератора.integer - Декорированный оператор
$statementprotected
Резюме методов
- __construct() publicКонструктор
- __get() publicМагический геттер для возвращения $queryString в режиме только для чтения.
- _reset() protectedСбросить все свойства
- bind() publicСвязывает набор значений с объектом оператора соответствующего типа
- bindValue() public
Назначает значение позиционной или именованной переменной в подготовленном запросе. Если используются позиционные переменные, начинайте с индекса один, если используете именованные параметры, просто используйте имя в любом порядке.
- closeCursor() public
Закрывает указатель в базе данных, освобождая все ресурсы и память, выделенные ему. В большинстве случаев вы не должны вызывать этот метод, так как он автоматически вызывается после извлечения всех результатов из набора результатов.
- columnCount() publicВозвращает количество столбцов, которые будут содержать результаты этого оператора
- count() public
Операторы могут быть переданы в качестве аргумента для count(), чтобы вернуть количество затронутых строк из последнего выполнения.
- current() publicВозвращает текущую запись в итераторе
- errorCode() publicВозвращает код ошибки для последней ошибки, произошедшей при выполнении этого оператора
- errorInfo() public
Возвращает информацию об ошибке для последней ошибки, произошедшей при выполнении этого оператора
- execute() public
Выполняет оператор, отправляя SQL-запрос в базу данных. Он может необязательно принимать массив или аргументы, которые будут связаны с переменными запроса. Обратите внимание, что привязка параметров из этого метода не будет выполнять какой-либо пользовательской конвертации типа, как это обычно происходит при вызове
bindValue - fetch() public
Возвращает следующую строку для набора результатов после выполнения этого оператора. Строки могут извлекаться, чтобы содержать столбцы как имена, так и позиции. Если строк больше нет в наборе результатов, этот метод вернет false
- fetchAll() publicВозвращает массив со всеми строками, полученными в результате выполнения этого оператора
- fetchAssoc() public
- fetchColumn() public
- getInnerStatement() publicПолучить обернутый оператор
- key() publicВозвращает текущий ключ в итераторе
- lastInsertId() publicВозвращает последний вставленный первичный ключ с помощью этого оператора
- next() publicПеремещает указатель итератора к следующему элементу
- rewind() publicПерематывает коллекцию
- rowCount() publicВозвращает количество строк, затронутых этим SQL-оператором
- valid() publicВозвращает, есть ли у итератора больше элементов
Подробное описание методов
__construct()source public
__construct( Cake\Database\StatementInterface $statement , Cake\Database\Driver $driver )
Конструктор
Параметры
-
Cake\Database\StatementInterface$statement - Реализация оператора, например PDOStatement
-
Cake\Database\Driver$driver - Экземпляр драйвера
__get()source public
__get( string $property )
Магический геттер для возвращения $queryString в режиме только для чтения.
Параметры
- строка
$property - внутреннее свойство для получения
Возвращает
mixedbind()source public
bind( array $params , array $types )
Связывает набор значений с объектом оператора соответствующего типа
Параметры
- массив
$params - список значений для привязки
- массив
$types - список типов для использования, ключи должны совпадать с теми, что в $params
Реализация
Cake\Database\StatementInterface::bind() bindValue()source public
bindValue( string|integer $column , mixed $value , string $type = 'string' )
Назначает значение позиционной или именованной переменной в подготовленном запросе. Если используются позиционные переменные, начинайте с индекса один, если используете именованные параметры, просто используйте имя в любом порядке.
Параметры
- строка|целое число
$column - имя или позиция параметра для привязки
- смешанный
$value - Значение для привязки к переменной в запросе
- строка
$typeнеобязательно 'string' - имя настроенного класса типа
Реализация
Cake\Database\StatementInterface::bindValue() closeCursor()source public
closeCursor( )
Закрывает указатель в базе данных, освобождая все ресурсы и память, выделенные ему. В большинстве случаев вы не должны вызывать этот метод, так как он автоматически вызывается после извлечения всех результатов из набора результатов.
Реализация
Cake\Database\StatementInterface::closeCursor() columnCount()source public
columnCount( )
Возвращает количество столбцов, которые будут содержать результаты этого запроса.
Возвращает
целое числоРеализация
Cake\Database\StatementInterface::columnCount() count()source public
count( )
Метод count() может принимать запросы в качестве аргумента, чтобы вернуть количество затронутых строк после последнего выполнения.
Возвращает
целое числоРеализация
Cake\Database\StatementInterface::count() current()source public
current( )
Возвращает текущую запись в итераторе.
Возвращает
смешанный типРеализация
Iterator::current() errorCode()source public
errorCode( )
Возвращает код ошибки для последней ошибки, произошедшей при выполнении данного запроса.
Возвращает
целое число или строкаРеализация
Cake\Database\StatementInterface::errorCode() errorInfo()source public
errorInfo( )
Возвращает информацию об ошибке для последней ошибки, произошедшей при выполнении данного запроса.
Возвращает
массивРеализация
Cake\Database\StatementInterface::errorInfo() execute()source public
execute( array|null $params = null )
Выполняет запрос, отправляя SQL-запрос в базу данных. Допустимо передать массив аргументов, которые будут связаны с переменными запроса. Обратите внимание, что привязка параметров из этого метода не будет выполнять преобразования типов, как это обычно происходит при вызове bindValue
Параметры
- массив|null
$paramsнеобязательный null - список значений, которые будут связаны с переменными запроса
Возвращает
логическое значениеистина при успехе, ложь в противном случае
Реализация
Cake\Database\StatementInterface::execute() fetch()source public
fetch( string $type = self::FETCH_TYPE_NUM )
Возвращает следующую строку из набора результатов после выполнения данного запроса. Строки могут быть извлечены, содержащие столбцы по именам или позициям. Если строк в наборе результатов больше нет, метод вернёт false.
Параметры
- строка
$typeнеобязательный self::FETCH_TYPE_NUM - Тип извлечения.
Возвращает
массив|ложьРеализация
Cake\Database\StatementInterface::fetch() fetchAll()source public
fetchAll( string $type = self::FETCH_TYPE_NUM )
Возвращает массив со всеми строками, полученными в результате выполнения данного запроса.
Параметры
- строка
$typeнеобязательный self::FETCH_TYPE_NUM - Тип извлечения.
Возвращает
массивРеализация
Cake\Database\StatementInterface::fetchAll() fetchAssoc()source public
fetchAssoc( )
fetchColumn()source public
fetchColumn( $position )
getInnerStatement()source public
getInnerStatement( )
Получить обработанный запрос.
Возвращает
Cake\Database\StatementInterfacekey()source public
key( )
Возвращает текущий ключ в итераторе.
Возвращает
смешанный типРеализация
Iterator::key() lastInsertId()source public
lastInsertId( string|null $table = null , string|null $column = null )
Возвращает идентификатор последней вставленной строки, используя этот запрос.
Параметры
- строка|null
$tableнеобязательный null - имя таблицы или последовательности, для получения последнего значения вставки
- строка|null
$columnнеобязательный null - имя столбца, представляющего первичный ключ
Возвращает
строкаРеализация
Cake\Database\StatementInterface::lastInsertId() next()source public
next( )
Передвигает указатель итератора на следующий элемент.
Реализация
Iterator::next() rowCount()source public
rowCount( )
Возвращает количество строк, затронутых данным SQL-запросом.
Возвращает
целое числоРеализация
Cake\Database\StatementInterface::rowCount() valid()source public
valid( )
Возвращает, есть ли в итераторе еще элементы.
Возвращает
логическое значениеРеализация
Iterator::valid() Методы, используемые из Cake\Database\TypeConverterTrait
cast()source public
cast( mixed $value , Cake\Database\Type|string $type )
Преобразует заданное значение в подходящее значение для базы данных на основе типа и возвращает соответствующий внутренний тип запроса.
Параметры
- смешанный тип
$value - Значение для преобразования.
-
Cake\Database\Type|строка$type - Имя типа или экземпляр типа для использования.
Возвращает
массивсписок, содержащий преобразованное значение и внутренний тип
matchTypes()source public
matchTypes( array $columns , array $types )
Сопоставляет столбцы соответствующим типам.
Как $columns, так и $types должны быть либо числовыми, либо строковыми ключами одновременно.
Параметры
- массив
$columns - список или ассоциативный массив столбцов и параметров, которые нужно привязать с типами
- массив
$types - список или ассоциативный массив типов
Возвращает
массивПодробности свойств
END_OF_DOCUMENT_MARKER$_hasExecutedsource
protected boolean
Булево значение, указывающее, был ли данный запрос уже выполнен
false
$buffersource
protected array
Кэш в оперативной памяти, содержащий результаты предыдущих итераторов
[]
© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/3.7/class-Cake.Database.Statement.BufferedStatement.html