Spec-Zone.ru › CakePHP 3.3

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

Возвращает

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

тип запроса для преобразования (выбор, вставка, обновление, удаление)

Возвращает

callable

quoteIdentifier()source public

quoteIdentifier( string $identifier )

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

Параметры

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

Возвращает

string

releaseSavePointSQL()source public

releaseSavePointSQL( string $name )

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

Параметры

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

Возвращает

string

rollbackSavePointSQL()source public

rollbackSavePointSQL( string $name )

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

Параметры

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

Возвращает

string

savePointSQL()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

Spec-Zone.ru

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