Трейт SqlDialectTrait
Трейт диалекта SQL
Краткое описание методов
- _deleteQueryTranslator() protectedПрименение шагов трансляции для запросов удаления.
- _expressionTranslators() protected
Возвращает ассоциативный массив методов, которые преобразуют объекты Expression для соответствия конкретному диалекту SQL. Ключи — имена классов, значения — методы в этом классе.
- _insertQueryTranslator() protectedПрименение шагов трансляции для запросов вставки.
- _removeAliasesFromConditions() protectedУдаляет псевдонимы из
WHEREзапроса. - _selectQueryTranslator() protectedПрименение шагов трансляции для запросов выбора.
- _transformDistinct() protected
Возвращает переданный запрос после переписывания условия DISTINCT, так что драйверы, которые не поддерживают часть «ON», могут предоставить фактический способ, как это должно быть сделано
- _updateQueryTranslator() protectedПрименение шагов трансляции для запросов обновления.
- queryTranslator() public
Возвращает вызываемую функцию, которая будет использоваться для преобразования переданного объекта Query. Эта функция, в свою очередь, вернёт экземпляр объекта Query, который был преобразован для адаптации к особенностям используемого диалекта SQL.
- quoteIdentifier() public
Приводит в соответствие идентификатор базы данных (имя столбца, имя таблицы и т. д.) для безопасного использования в запросах без риска использования зарезервированных слов
- releaseSavePointSQL() publicВозвращает фрагмент SQL для освобождения ранее созданной точки сохранения
- rollbackSavePointSQL() publicВозвращает фрагмент SQL для отката ранее созданной точки сохранения
- savePointSQL() publicВозвращает фрагмент SQL для создания новой точки сохранения транзакции
Подробное описание методов
_deleteQueryTranslator()source protected
_deleteQueryTranslator( Cake\Database\Query $query )
Применение шагов трансляции для запросов удаления.
Удаляет псевдонимы из условий запроса удаления, так как большинство диалектов баз данных не поддерживают псевдонимы в запросах удаления. Это также удаляет псевдонимы в именах таблиц, так как они часто тоже не работают.
Мы намеренно не поддерживаем удаления с объединениями, так как они имеют ещё меньшую поддержку.
Параметры
-
Cake\Database\Query$query - Запрос для трансляции
Возвращает
Cake\Database\QueryИзменённый запрос
_expressionTranslators()source protected
_expressionTranslators( )
Возвращает ассоциативный массив методов, которые преобразуют объекты Expression для соответствия конкретному диалекту SQL. Ключи — имена классов, значения — методы в этом классе.
Возвращает
array_insertQueryTranslator()source protected
_insertQueryTranslator( Cake\Database\Query $query )
Применение шагов трансляции для запросов вставки.
Параметры
-
Cake\Database\Query$query - Запрос для трансляции
Возвращает
Cake\Database\QueryИзменённый запрос
_removeAliasesFromConditions()source protected
_removeAliasesFromConditions( Cake\Database\Query $query )
Удаляет псевдонимы из WHERE запроса.
Параметры
-
Cake\Database\Query$query - Запрос для обработки.
Возвращает
Cake\Database\QueryИзменённый запрос.
Исключения
RuntimeExceptionВ случае, если обработанный запрос содержит объединения, так как удаление псевдонимов из условий может нарушить ссылки на соединённые таблицы.
_selectQueryTranslator()source protected
_selectQueryTranslator( Cake\Database\Query $query )
Применение шагов трансляции для запросов выбора.
Параметры
-
Cake\Database\Query$query - Запрос для трансляции
Возвращает
Cake\Database\QueryИзменённый запрос
_transformDistinct()source protected
_transformDistinct( Cake\Database\Query $query )
Возвращает переданный запрос после переписывания условия DISTINCT, так что драйверы, которые не поддерживают часть «ON», могут предоставить фактический способ, как это должно быть сделано
Параметры
-
Cake\Database\Query$query - Запрос для преобразования
Возвращает
Cake\Database\Query_updateQueryTranslator()source protected
_updateQueryTranslator( Cake\Database\Query $query )
Применение шагов трансляции для запросов обновления.
Удаляет псевдонимы из условий запроса обновления, так как не все диалекты баз данных поддерживают псевдонимы в запросах обновления.
Так же, как и для запросов удаления, объединения в настоящее время не поддерживаются для запросов обновления.
Параметры
-
Cake\Database\Query$query - Запрос для трансляции
Возвращает
Cake\Database\QueryИзменённый запрос
queryTranslator()source public
queryTranslator( string $type )
Возвращает вызываемую функцию, которая будет использоваться для преобразования переданного объекта Query. Эта функция, в свою очередь, вернёт экземпляр объекта Query, который был преобразован для адаптации к особенностям используемого диалекта SQL.
Параметры
- string
$type тип запроса для преобразования (выбор, вставка, обновление, удаление)
Возвращает
callablequoteIdentifier()source public
quoteIdentifier( string $identifier )
Приводит в соответствие идентификатор базы данных (имя столбца, имя таблицы и т. д.) для безопасного использования в запросах без риска использования зарезервированных слов
Параметры
- string
$identifier - Идентификатор для приведения в соответствие.
Возвращает
stringreleaseSavePointSQL()source public
releaseSavePointSQL( string $name )
Возвращает фрагмент SQL для освобождения ранее созданной точки сохранения
Параметры
- string
$name - имя точки сохранения
Возвращает
stringrollbackSavePointSQL()source public
rollbackSavePointSQL( string $name )
Возвращает фрагмент SQL для отката ранее созданной точки сохранения
Параметры
- string
$name - имя точки сохранения
Возвращает
stringsavePointSQL()source public
savePointSQL( string $name )
Возвращает фрагмент SQL для создания новой точки сохранения транзакции
Параметры
- string
$name - имя точки сохранения
Возвращает
string
© 2005–2017 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.3/class-Cake.Database.SqlDialectTrait.html