Spec-Zone.ru › CakePHP 4.3

Класс QueryCompiler

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

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

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

  • $_deleteParts protected
    array<string>

    Список частей запроса для построения оператора DELETE

  • $_insertParts protected
    array<string>

    Список частей запроса для построения оператора INSERT

  • $_orderedUnion protected
    bool

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

  • $_quotedSelectAliases protected
    bool

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

  • $_selectParts protected
    array<string>

    Список частей запроса для построения оператора SELECT

  • $_templates protected
    array<string, string>

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

  • $_updateParts protected
    array<string>

    Список частей запроса для построения оператора 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<string>

$_insertParts protected

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

Тип

array<string>

$_orderedUnion protected

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

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

Тип

bool

$_quotedSelectAliases protected

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

Тип

bool

$_selectParts protected

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

Тип

array<string>

$_templates protected

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

Тип

array<string, string>

$_updateParts protected

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

Тип

array<string>

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

Spec-Zone.ru

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