Spec-Zone.ru › CakePHP 4.2

Класс QueryCompiler

Отвечает за компиляцию объекта Query в его представление SQL

Пространство имен: Cake\Database

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

  • $_deleteParts protected
    array

    Список узлов запроса для обработки при генерации оператора DELETE

  • $_insertParts protected
    array

    Список узлов запроса для обработки при генерации оператора INSERT

  • $_orderedUnion protected
    bool

    Указывает, поддерживает ли данный диалект запросов упорядоченные объединения.

  • $_quotedSelectAliases protected
    bool

    Указывает, нужно ли всегда заключать псевдонимы в SELECT-оператор в кавычки.

  • $_selectParts protected
    array

    Список узлов запроса для обработки при генерации оператора SELECT

  • $_templates protected
    array

    Список шаблонов sprintf, которые будут использоваться для компиляции SQL для данного запроса. Некоторые части могут быть построены как непосредственное конкатенация внутренних частей, они перечислены здесь.

  • $_updateParts protected
    array

    Список узлов запроса для обработки при генерации оператора UPDATE

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

  • _buildFromPart() protected

    Вспомогательная функция, используемая для построения строкового представления фрагмента FROM, строит список таблиц, учитывая псевдонимы и конвертируя объекты выражений в строки.

  • _buildInsertPart() protected

    Строит фрагмент SQL для INSERT INTO.

  • _buildJoinPart() protected

    Вспомогательная функция для построения строкового представления множественных JOIN-фрагментов, строит список соединений, учитывая псевдонимы и преобразуя объекты выражений в строки как для таблицы, к которой происходит присоединение, так и для условий, которые будут использоваться.

  • _buildModifierPart() protected

    Строит фрагмент SQL для модификатора.

  • _buildSelectPart() protected

    Вспомогательная функция для построения строкового представления фрагмента SELECT, строит список полей, учитывая псевдонимы и конвертируя объекты выражений в строки. Эта функция также строит фрагмент DISTINCT для запроса.

  • _buildSetPart() protected

    Вспомогательная функция для генерации SQL для выражений SET.

  • _buildUnionPart() protected

    Строит строку SQL для всех UNION-фрагментов в этом запросе. При работе с объектами запроса также преобразует их с использованием настроенного диалекта SQL.

  • _buildUpdatePart() protected

    Строит фрагмент SQL для UPDATE.

  • _buildValuesPart() protected

    Строит фрагмент SQL для INSERT INTO.

  • _buildWindowPart() protected

    Вспомогательная функция для построения строкового представления фрагмента окна.

  • _buildWithPart() protected

    Вспомогательная функция для построения строкового представления фрагмента WITH, строит список определений CTE и генерирует ключевое слово RECURSIVE при необходимости.

  • _sqlCompiler() protected

    Возвращает вызываемый объект, который может использоваться для компиляции строкового представления SQL этого запроса.

  • _stringifyExpressions() protected

    Вспомогательная функция для преобразования объектов ExpressionInterface внутри массива в их строковое представление.

  • compile() public

    Возвращает представление SQL предоставленного запроса после генерации заполнителей для связанных значений с использованием предоставленного генератора.

END_OF_DOCUMENT_MARKER

Подробное описание методов

_buildFromPart() protected

_buildFromPart(array $parts, Cake\Database\Query $query, Cake\Database\ValueBinder $binder): string

Вспомогательная функция для построения строкового представления фрагмента FROM, она строит список таблиц, учитывая алиасы и преобразование объектов выражений в строки.

Параметры

array $parts

список таблиц, которые нужно преобразовать в строку

Cake\Database\Query $query

Запрос, который компилируется

Cake\Database\ValueBinder $binder

Используемый связыватель значений для генерации плейсхолдеров параметров

Возвращает

string

_buildInsertPart() protected

_buildInsertPart(array $parts, Cake\Database\Query $query, Cake\Database\ValueBinder $binder): string

Строит фрагмент SQL для INSERT INTO.

Параметры

array $parts

Части вставки.

Cake\Database\Query $query

Запрос, который компилируется

Cake\Database\ValueBinder $binder

Используемый связыватель значений для генерации плейсхолдеров параметров

Возвращает

string

_buildJoinPart() protected

_buildJoinPart(array $parts, Cake\Database\Query $query, Cake\Database\ValueBinder $binder): string

Вспомогательная функция для построения строкового представления нескольких фрагментов JOIN, она строит список объединений, учитывая алиасы и преобразование объектов выражений в строки как для таблицы, к которой присоединяется, так и для условий, которые используются.

Параметры

array $parts

список объединений, которые нужно преобразовать в строку

Cake\Database\Query $query

Запрос, который компилируется

Cake\Database\ValueBinder $binder

Используемый связыватель значений для генерации плейсхолдеров параметров

Возвращает

string

_buildModifierPart() protected

_buildModifierPart(array $parts, Cake\Database\Query $query, Cake\Database\ValueBinder $binder): string

Строит фрагмент SQL для модификатора.

Параметры

array $parts

Части модификатора запроса.

Cake\Database\Query $query

Запрос, который компилируется

Cake\Database\ValueBinder $binder

Используемый связыватель значений для генерации плейсхолдеров параметров

Возвращает

string

_buildSelectPart() protected

_buildSelectPart(array $parts, Cake\Database\Query $query, Cake\Database\ValueBinder $binder): string

Вспомогательная функция для построения строкового представления фрагмента SELECT, она строит список полей, учитывая алиасы и преобразование объектов выражений в строки. Эта функция также строит фрагмент DISTINCT для запроса.

Параметры

array $parts

список полей, которые нужно преобразовать в строку

Cake\Database\Query $query

Запрос, который компилируется

Cake\Database\ValueBinder $binder

Используемый связыватель значений для генерации плейсхолдеров параметров

Возвращает

string

_buildSetPart() protected

_buildSetPart(array $parts, Cake\Database\Query $query, Cake\Database\ValueBinder $binder): string

Вспомогательная функция для генерации SQL для выражений SET.

Параметры

array $parts

Список пар ключ-значение для установки.

Cake\Database\Query $query

Запрос, который компилируется

Cake\Database\ValueBinder $binder

Используемый связыватель значений для генерации плейсхолдеров параметров

Возвращает

string

_buildUnionPart() protected

_buildUnionPart(array $parts, Cake\Database\Query $query, Cake\Database\ValueBinder $binder): string

Строит строку SQL для всех фрагментов UNION в этом запросе. При работе с объектами запроса также преобразует их, используя настроенный диалект SQL.

Параметры

array $parts

список запросов, которые будут объединены оператором UNION

Cake\Database\Query $query

Запрос, который компилируется

Cake\Database\ValueBinder $binder

Используемый связыватель значений для генерации плейсхолдеров параметров

Возвращает

string

_buildUpdatePart() protected

_buildUpdatePart(array $parts, Cake\Database\Query $query, Cake\Database\ValueBinder $binder): string

Строит фрагмент SQL для UPDATE.

Параметры

array $parts

Части обновления.

Cake\Database\Query $query

Запрос, который компилируется

Cake\Database\ValueBinder $binder

Используемый связыватель значений для генерации плейсхолдеров параметров

Возвращает

string

_buildValuesPart() protected

_buildValuesPart(array $parts, Cake\Database\Query $query, Cake\Database\ValueBinder $binder): string

Строит фрагмент SQL для INSERT INTO.

Параметры

array $parts

Части значений.

Cake\Database\Query $query

Запрос, который компилируется

Cake\Database\ValueBinder $binder

Используемый связыватель значений для генерации плейсхолдеров параметров

Возвращает

string

_buildWindowPart() protected

_buildWindowPart(array $parts, Cake\Database\Query $query, Cake\Database\ValueBinder $binder): string

Вспомогательная функция для построения строкового представления фрагмента окна.

Параметры

array $parts

Список окон, которые нужно преобразовать в строку

Cake\Database\Query $query

Запрос, который компилируется

Cake\Database\ValueBinder $binder

Используемый связыватель значений для генерации плейсхолдеров параметров

Возвращает

string

_buildWithPart() protected

_buildWithPart(array $parts, Cake\Database\Query $query, Cake\Database\ValueBinder $binder): string

Вспомогательная функция для построения строкового представления фрагмента WITH, она строит список определений CTE и генерирует ключевое слово RECURSIVE при необходимости.

Параметры

array $parts

Список CTE, которые нужно преобразовать в строку

Cake\Database\Query $query

Запрос, который компилируется

Cake\Database\ValueBinder $binder

Используемый связыватель значений для генерации плейсхолдеров параметров

Возвращает

string

_sqlCompiler() protected

_sqlCompiler(string $sql, Cake\Database\Query $query, Cake\Database\ValueBinder $binder): Closure

Возвращает вызываемый объект, который можно использовать для компиляции строкового представления SQL этого запроса.

Параметры

string $sql

исходная строка SQL, к которой нужно добавить фрагменты

Cake\Database\Query $query

Запрос, который компилируется

Cake\Database\ValueBinder $binder

Используемый связыватель значений для генерации плейсхолдеров параметров

Возвращает

Closure

_stringifyExpressions() protected

_stringifyExpressions(array $expressions, Cake\Database\ValueBinder $binder, bool $wrap = true): array

Вспомогательная функция для преобразования объектов ExpressionInterface в массиве в их строковое представление.

Параметры

array $expressions

список строк и объектов ExpressionInterface

Cake\Database\ValueBinder $binder

Используемый связыватель значений для генерации плейсхолдеров параметров

bool $wrap optional

Нужно ли заключать каждый объект выражения в скобки

Возвращает

array

compile() public

compile(Cake\Database\Query $query, Cake\Database\ValueBinder $binder): string

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

Параметры

Cake\Database\Query $query

Запрос, который компилируется

Cake\Database\ValueBinder $binder

Используемый связыватель значений для генерации плейсхолдеров параметров

Возвращает

string

Подробное описание свойства

$_deleteParts protected

Список частей запроса, которые необходимо пройти для генерации оператора DELETE.

Тип

array

$_insertParts protected

Список частей запроса, которые необходимо пройти для генерации оператора INSERT.

Тип

array

$_orderedUnion protected

Указывает, поддерживает ли данный диалект запросов упорядоченные объединения.

Переопределяется в дочерних классах.

Тип

bool

$_quotedSelectAliases protected

Указывает, необходимо ли всегда заключать псевдонимы в SELECT-оператор в кавычки.

Тип

bool

$_selectParts protected

Список частей запроса, которые необходимо пройти для генерации оператора SELECT.

Тип

array

$_templates protected

Список шаблонов sprintf, которые будут использоваться для компиляции SQL для данного запроса. Некоторые части могут быть построены как непосредственное конкатенация внутренних частей, они указаны здесь.

Тип

array

$_updateParts protected

Список частей запроса, которые необходимо пройти для генерации оператора UPDATE.

Тип

array

© 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/4.2/class-Cake.Database.QueryCompiler.html

Spec-Zone.ru

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