Интерфейс StatementInterface
Представляет базу данных statement. Конкретные реализации могут использовать PDOStatement или собственный драйвер
Прямые реализаторы
Косвенные реализаторы
- Cake\Database\Statement\BufferedStatement
- Cake\Database\Statement\CallbackStatement
- Cake\Database\Statement\PDOStatement
Краткое описание методов
- bind() publicСвязывает набор значений с объектом statement соответствующего типа
- bindValue() public
Присваивает значение позиционному или именованному параметру в подготовленном запросе. Если используются позиционные параметры, индексация начинается с единицы. Если используются именованные параметры, используйте имя в любом порядке.
- closeCursor() public
Закрывает указатель в базе данных, освобождая ресурсы и память, выделенные для него. В большинстве случаев вызывать этот метод не нужно, так как он автоматически вызывается после извлечения всех результатов из набора результатов.
- columnCount() publicВозвращает количество столбцов, содержащихся в результатах этого statement
- count() public
Statement можно передавать в качестве аргумента для count() для получения количества затронутых строк от последнего выполнения.
- errorCode() publicВозвращает код ошибки для последней ошибки, произошедшей при выполнении этого statement
- errorInfo() public
Возвращает информацию об ошибке для последней ошибки, произошедшей при выполнении этого statement
- execute() public
Выполняет statement, отправляя SQL-запрос в базу данных. Можно необязательно передать массив или аргументы для привязки к переменным запроса. Обратите внимание, что привязка параметров из этого метода не выполнит никакого пользовательского преобразования типов, как это обычно происходит при вызове
bindValue - fetch() public
Возвращает следующую строку набора результатов после выполнения этого statement. Строки можно извлечь, чтобы содержать столбцы в виде имен или позиций. Если в наборе результатов не осталось строк, этот метод вернет false
- fetchAll() publicВозвращает массив со всеми строками, полученными в результате выполнения этого statement
- lastInsertId() publicВозвращает последний вставленный первичный ключ с помощью этого statement
- rowCount() publicВозвращает количество строк, затронутых этим SQL-запросом
Подробное описание методов
bind()source public
bind( array $params , array $types )
Связывает набор значений с объектом statement соответствующего типа
Параметры
- массив
$params - список значений для привязки
- массив
$types - список типов, которые должны быть использованы, ключи должны соответствовать ключам в $params
bindValue()source public
bindValue( string|integer $column , mixed $value , string $type 'string' )
Присваивает значение позиционному или именованному параметру в подготовленном запросе. Если используются позиционные параметры, индексация начинается с единицы. Если используются именованные параметры, используйте имя в любом порядке.
Не разрешается комбинировать позиционные и именованные параметры в одном statement
Примеры:
$statement->bindValue(1, 'a title');
$statement->bindValue('active', true, 'boolean');
$statement->bindValue(5, new \DateTime(), 'date'); Параметры
- строка|целое число
$column - имя или позиция параметра для привязки
- смешанное
$value - значение для привязки к переменной в запросе
- строка
$typeнеобязательно 'string' - имя настроенного класса типа
closeCursor()source public
closeCursor( )
Закрывает указатель в базе данных, освобождая ресурсы и память, выделенные для него. В большинстве случаев вызывать этот метод не нужно, так как он автоматически вызывается после извлечения всех результатов из набора результатов.
columnCount()source public
columnCount( )
Возвращает количество столбцов, содержащихся в результатах этого statement
Пример:
$statement = $connection->prepare('SELECT id, title from articles');
$statement->execute();
echo $statement->columnCount(); // outputs 2 Возвращает
целое числоcount()source public
count( )
Statement можно передавать в качестве аргумента для count() для получения количества затронутых строк от последнего выполнения
Возвращает
целое числоerrorCode()source public
errorCode( )
Возвращает код ошибки для последней ошибки, произошедшей при выполнении этого statement
Возвращает
целое число|строкаerrorInfo()source public
errorInfo( )
Возвращает информацию об ошибке для последней ошибки, произошедшей при выполнении этого statement
Возвращает
массивexecute()source public
execute( array|null $params null )
Выполняет statement, отправляя SQL-запрос в базу данных. Можно необязательно передать массив или аргументы для привязки к переменным запроса. Обратите внимание, что привязка параметров из этого метода не выполнит никакого пользовательского преобразования типов, как это обычно происходит при вызове bindValue
Параметры
- массив|null
$paramsнеобязательно null - список значений для привязки к запросу
Возвращает
booleantrue при успехе, false в противном случае
fetch()source public
fetch( string $type 'num' )
Возвращает следующую строку набора результатов после выполнения этого statement. Строки можно извлечь, чтобы содержать столбцы в виде имен или позиций. Если в наборе результатов не осталось строк, этот метод вернет false
Пример:
$statement = $connection->prepare('SELECT id, title from articles');
$statement->execute();
print_r($statement->fetch('assoc')); // will show ['id' => 1, 'title' => 'a title'] Параметры
- строка
$typeнеобязательно 'num' - 'num' для позиционных столбцов, assoc для именованных столбцов
Возвращает
массив|falseМассив результатов, содержащий столбцы и значения, или false, если результатов не осталось
fetchAll()source public
fetchAll( string $type 'num' )
Возвращает массив со всеми строками, полученными в результате выполнения этого statement
Пример:
$statement = $connection->prepare('SELECT id, title from articles');
$statement->execute();
print_r($statement->fetchAll('assoc')); // will show [0 => ['id' => 1, 'title' => 'a title']] Параметры
- строка
$typeнеобязательно 'num' - num для извлечения столбцов в качестве позиционных ключей или assoc для имен столбцов в качестве ключей
Возвращает
массивсписок всех результатов из базы данных для этого statement
lastInsertId()source public
lastInsertId( string|null $table null , string|null $column null )
Возвращает последний вставленный первичный ключ с помощью этого statement
Параметры
- строка|null
$tableнеобязательно null - имя таблицы или последовательности для получения последнего вставленного значения
- строка|null
$columnнеобязательно null - имя столбца, представляющего первичный ключ
Возвращает
строкаrowCount()source public
rowCount( )
Возвращает количество строк, затронутых этим SQL-запросом.
Пример:
$statement = $connection->prepare('SELECT id, title from articles');
$statement->execute();
print_r($statement->rowCount()); // will show 1 Возвращает
целое число
© 2005–2018 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.5/class-Cake.Database.StatementInterface.html