Spec-Zone.ru › CakePHP 3.6

Трейт 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–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.6/class-Cake.Database.SqlDialectTrait.html

Spec-Zone.ru

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