Spec-Zone.ru › CakePHP 3.5

Метод SqlDialectTrait

Метод диалекта SQL

Пространство имён: Cake\Database
Расположение: Database/SqlDialectTrait.php

Краткое описание методов

  • _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. Ключи — имена классов, значения — метод в этом классе.

Возвращает

массив

_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.

Параметры

строка $type

тип запроса, который нужно преобразовать (select, insert, update, delete)

Возвращает

вызываемая функция

quoteIdentifier()source public

quoteIdentifier( string $identifier )

Приводит в соответствие идентификатор базы данных (имя столбца, имя таблицы и т. д.) для безопасного использования в запросах без риска использования зарезервированных слов

Параметры

строка $identifier
Идентификатор для приведения в соответствие.

Возвращает

строка

releaseSavePointSQL()source public

releaseSavePointSQL( string $name )

Возвращает фрагмент SQL для высвобождения ранее созданной точки сохранения

Параметры

строка $name
имя точки сохранения

Возвращает

строка

rollbackSavePointSQL()source public

rollbackSavePointSQL( string $name )

Возвращает фрагмент SQL для отката ранее созданной точки сохранения

Параметры

строка $name
имя точки сохранения

Возвращает

строка

savePointSQL()source public

savePointSQL( string $name )

Возвращает фрагмент SQL для создания новой точки сохранения транзакции

Параметры

строка $name
имя точки сохранения

Возвращает

строка

© 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.SqlDialectTrait.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API