Класс BufferedStatement
Декоратор запроса, реализующий буферизацию результатов.
Этот декоратор запроса сохранит полученные результаты в памяти, что позволит перемотать итератор и повторно использовать его.
- Cake\Database\Statement\StatementDecorator implements Cake\Database\StatementInterface, Countable, IteratorAggregate uses Cake\Database\TypeConverterTrait
-
Cake\Database\Statement\BufferedStatement
Подробное описание методов
__constructsource public
__construct( Cake\Database\StatementInterface|null $statement null , Cake\Database\Driver|null $driver null )
Конструктор
Параметры
-
Cake\Database\StatementInterface|null$statementнеобязательно null - Реализация запроса, например, PDOStatement
-
Cake\Database\Driver|null$driverнеобязательно null - Экземпляр драйвера
Переопределяет
Cake\Database\Statement\StatementDecorator::__construct() executesource public
execute( array|null $params null )
Выполнить запрос и вернуть результаты.
Параметры
- array|null
$paramsнеобязательно null - Список значений для привязки к запросу
Возвращает
booleantrue при успехе, false в противном случае
Переопределяет
Cake\Database\Statement\StatementDecorator::execute() fetchsource public
fetch( string $type 'num' )
Возвращает следующую строку набора результатов после выполнения этого запроса. Строки могут быть получены для отображения столбцов по именам или позициям. Если строк в наборе результатов больше нет, метод вернёт false.
Параметры
- string
$typeнеобязательно 'num' - Тип для получения.
Возвращает
array|falsearray|false
Переопределяет
Cake\Database\Statement\StatementDecorator::fetch() fetchAllsource public
fetchAll( string $type 'num' )
Возвращает массив со всеми строками, полученными в результате выполнения этого запроса.
Параметры
- string
$typeнеобязательно 'num' - Тип для получения.
Возвращает
arrayмассив
Переопределяет
Cake\Database\Statement\StatementDecorator::fetchAll() rowCountsource public
rowCount( )
Возвращает количество строк, затронутых этим SQL-запросом.
Возвращает
integerцелое число
Переопределяет
Cake\Database\Statement\StatementDecorator::rowCount() Наследованные методы от Cake\Database\Statement\StatementDecorator
__getsource public
__get( string $property )
Магический геттер для возвращения $queryString как неизменяемого.
Параметры
- string
$property - внутреннее свойство для получения
Возвращает
mixedсмешанный тип
bindsource public
bind( array $params , array $types )
Связывает набор значений с объектом запроса с соответствующим типом.
Параметры
- array
$params - Список значений для привязки
- array
$types - Список типов, которые необходимо использовать; ключи должны совпадать с ключами в $params
Реализация
Cake\Database\StatementInterface::bind() bindValuesource public
bindValue( string|integer $column , mixed $value , string $type 'string' )
Назначить значение позиционной или именованной переменной в подготовленном запросе. Если используются позиционные переменные, необходимо начинать с индекса один, если используются именованные параметры, то используйте просто имя в любом порядке.
Не разрешается комбинировать позиционные и именованные переменные в одном запросе.
Примеры:
$statement->bindValue(1, 'a title'); $statement->bindValue('active', true, 'boolean'); $statement->bindValue(5, new \DateTime(), 'date');
Параметры
- string|integer
$column - имя или позиция параметра для привязки
- mixed
$value - Значение для привязки к переменной в запросе
- string
$typeнеобязательно 'string' - имя настроенного класса типа
Реализация
Cake\Database\StatementInterface::bindValue() closeCursorsource public
closeCursor( )
Закрывает курсор в базе данных, освобождая все ресурсы и память, выделенные для него. В большинстве случаев вы не должны вызывать этот метод, так как он вызывается автоматически после извлечения всех результатов из набора результатов.
Реализация
Cake\Database\StatementInterface::closeCursor() columnCountsource public
columnCount( )
Возвращает количество столбцов, которые будут содержать результаты этого запроса.
Пример:
$statement = $connection->prepare('SELECT id, title from articles'); $statement->execute(); echo $statement->columnCount(); // outputs 2
Возвращает
integerцелое число
Реализация
Cake\Database\StatementInterface::columnCount() countsource public
count( )
Запросы могут быть переданы в качестве аргумента для count(), чтобы вернуть количество затронутых строк из последнего выполнения.
Возвращает
integerцелое число
Реализация
Cake\Database\StatementInterface::count() errorCodesource public
errorCode( )
Возвращает код ошибки для последней ошибки, произошедшей при выполнении этого запроса.
Возвращает
integer|stringцелое число или строка
Реализация
Cake\Database\StatementInterface::errorCode() errorInfosource public
errorInfo( )
Возвращает информацию об ошибке для последней ошибки, произошедшей при выполнении этого запроса.
Возвращает
arrayмассив
Реализация
Cake\Database\StatementInterface::errorInfo() getInnerStatementsource public
getInnerStatement( )
Возвращает объект запроса, который был декорирован этим классом.
Возвращает
Cake\Database\StatementInterface\Cake\Database\StatementInterface
getIteratorsource public
getIterator( )
Запросы итерируются как массивы; этот метод вернёт объект итератора для обхода всех элементов результата.
Пример:
$statement = $connection->prepare('SELECT id, title from articles'); foreach ($statement as $row) { //do stuff }
Возвращает
Iterator\Iterator
Реализация
IteratorAggregate::getIterator() lastInsertIdsource public
lastInsertId( string|null $table null , string|null $column null )
Возвращает последний вставленный первичный ключ, используя данное выражение.
Параметры
- string|null
$tableнеобязательно null - имя таблицы или последовательности для получения последнего значения вставки
- string|null
$columnнеобязательно null - имя столбца, представляющего первичный ключ
Возвращает
stringстрока
Реализация
Cake\Database\StatementInterface::lastInsertId() Используемые методы из Cake\Database\TypeConverterTrait
castsource public
cast( mixed $value , Cake\Database\Type|string $type )
Преобразует значение в подходящее для базы данных значение на основе типа и возвращает соответствующий внутренний тип выражения.
Параметры
- mixed
$value - Значение для преобразования
-
Cake\Database\Type|string$type - Имя типа или экземпляр типа для использования.
Возвращает
arrayсписок, содержащий преобразованное значение и внутренний тип
matchTypessource public
matchTypes( array $columns , array $types )
Сопоставляет столбцы с соответствующими типами.
И $columns, и $types должны быть либо числовыми, либо строковыми ключами одновременно.
Параметры
- array
$columns - список или ассоциативный массив столбцов и параметров, которые будут связаны с типами
- array
$types - список или ассоциативный массив типов
Возвращает
arrayмассив
Краткое описание свойств
Свойства, унаследованные от Cake\Database\Statement\StatementDecorator
$_driversource
protected Cake\Database\Driver
Ссылка на объект драйвера, связанный с этим выражением.
$_statementsource
protected mixed
Реализация экземпляра выражения, например PDOStatement или любая другая реализация.
© 2005–2016 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.
http://api.cakephp.org/3.1/class-Cake.Database.Statement.BufferedStatement.html