Spec-Zone.ru › CakePHP 4.2

Класс SqliteSchemaDialect

Функции управления/отражения схемы для Sqlite

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

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

  • $_constraintsIdMap protected
    array

    Массив, содержащий имена ограничений внешних ключей. Необходим для обработки составных внешних ключей

  • $_driver protected
    Cake\Database\DriverInterface

    Используемый экземпляр драйвера.

  • $_hasSequences protected
    bool

    Признак наличия в этом подключении к SQLite таблиц, содержащих последовательности.

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

  • __construct() public

    Конструктор

  • _convertColumn() protected

    Преобразовать определение столбца в абстрактные типы.

  • _convertConstraintColumns() protected

    Преобразовать ссылки на ограничения внешних ключей в допустимый строковый список

  • _convertOnClause() protected

    Преобразовать строковые ON-определения в абстрактные.

  • _defaultValue() protected

    Обработать значение по умолчанию.

  • _foreignOnClause() protected

    Сгенерировать ON-определение для внешнего ключа.

  • addConstraintSql() public

    Сгенерировать SQL-запросы для добавления ограничений внешних ключей в таблицу

  • columnSql() public

    Сгенерировать SQL-фрагмент для отдельного столбца в таблице.

  • constraintSql() public

    Сгенерировать SQL-фрагменты для определения ограничений таблицы.

  • convertColumnDescription() public

    Преобразовать результаты описания столбцов в абстрактные поля схемы.

  • convertForeignKeyDescription() public

    Преобразовать описание внешнего ключа в ограничения объекта Table.

  • convertIndexDescription() public

    Преобразовать результаты описания индексов в абстрактные индексы или ограничения схемы.

  • convertOptionsDescription() public

    Преобразовать данные параметров в параметры таблицы.

  • createTableSql() public

    Сгенерировать SQL для создания таблицы.

  • describeColumnSql() public

    Сгенерировать SQL для описания таблицы.

  • describeForeignKeySql() public

    Сгенерировать SQL для описания внешних ключей в таблице.

  • describeIndexSql() public

    Сгенерировать SQL для описания индексов в таблице.

  • describeOptionsSql() public

    Сгенерировать SQL для описания параметров таблицы

  • dropConstraintSql() public

    Сгенерировать SQL-запросы для удаления ограничений внешних ключей из таблицы

  • dropTableSql() public

    Сгенерировать SQL для удаления таблицы.

  • hasSequences() public

    Возвращает признак наличия в этом подключении к SQLite таблиц, содержащих последовательности

  • indexSql() public

    Сгенерировать SQL-фрагмент для отдельного индекса в таблице.

  • listTablesSql() public

    Сгенерировать SQL для вывода списка таблиц.

  • truncateTableSql() public

    Сгенерировать SQL для обнуления таблицы.

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

__construct() public

__construct(Cake\Database\DriverInterface $driver)

Конструктор

Этот конструктор подключает драйвер, чтобы методы, такие как columnSql() и другие, возвращали ошибку, если драйвер не подключён.

Параметры

Cake\Database\DriverInterface $driver

Используемый драйвер.

_convertColumn() protected

_convertColumn(string $column): array

Преобразование определения столбца в абстрактные типы.

Возвращаемый тип будет типом, который может обработать Cake\Database\TypeFactory.

Параметры

string $column

Тип и длина столбца

Возвращаемое значение

array

Исключения

Cake\Database\Exception\DatabaseException
при невозможности разобрать тип столбца

_convertConstraintColumns() protected

_convertConstraintColumns(string|array $references): string

Преобразование ссылок на ограничения внешнего ключа в корректный строковый список.

Параметры

string|array $references

Ссылаемые столбцы оператора ограничения внешнего ключа.

Возвращаемое значение

string

_convertOnClause() protected

_convertOnClause(string $clause): string

Преобразование строковых операторов on в абстрактные.

Параметры

string $clause

Оператор on для преобразования.

Возвращаемое значение

string

_defaultValue() protected

_defaultValue(string|int|null $default): string|int|null

Обработка значения по умолчанию.

Sqlite включает кавычки и значения NULL в значениях по умолчанию. Нам нужно их удалить.

Параметры

string|int|null $default

Значение по умолчанию.

Возвращаемое значение

string|int|null

_foreignOnClause() protected

_foreignOnClause(string $on): string

Генерация оператора ON для внешнего ключа.

Параметры

string $on

Оператор on

Возвращаемое значение

string

addConstraintSql() public

addConstraintSql(Cake\Database\Schema\TableSchema $schema): array

Генерация SQL-запросов для добавления ограничений внешнего ключа к таблице

SQLite не может правильно обработать добавление ограничения к существующей таблице. Этот метод ничего не делает.

Параметры

Cake\Database\Schema\TableSchema $schema

Экземпляр таблицы, к которому применяются ограничения внешнего ключа.

Возвращаемое значение

array

columnSql() public

columnSql(Cake\Database\Schema\TableSchema $schema, string $name): string

Генерация SQL-фрагмента для одного столбца в таблице.

Параметры

Cake\Database\Schema\TableSchema $schema

Экземпляр таблицы, в которой находится столбец.

string $name

Имя столбца.

Возвращаемое значение

string

Исключения

Cake\Database\Exception\DatabaseException
когда тип столбца неизвестен

constraintSql() public

constraintSql(Cake\Database\Schema\TableSchema $schema, string $name): string

Генерация SQL-фрагментов для определения ограничений таблицы.

Обратите внимание, что целые первичные ключи вернут ''. Это сделано намеренно, так как Sqlite требует, чтобы целые первичные ключи были определены в определении столбца.

Параметры

Cake\Database\Schema\TableSchema $schema

Экземпляр таблицы, в которой находится столбец.

string $name

Имя столбца.

Возвращаемое значение

string

convertColumnDescription() public

convertColumnDescription(Cake\Database\Schema\TableSchema $schema, array $row): void

Преобразование результатов описания полей в абстрактные поля схемы.

Параметры

Cake\Database\Schema\TableSchema $schema
array $row

Возвращаемое значение

void

convertForeignKeyDescription() public

convertForeignKeyDescription(Cake\Database\Schema\TableSchema $schema, array $row): void

Преобразование описания внешнего ключа в ограничения в объекте Table.

Параметры

Cake\Database\Schema\TableSchema $schema
array $row

Возвращаемое значение

void

convertIndexDescription() public

convertIndexDescription(Cake\Database\Schema\TableSchema $schema, array $row): void

Преобразование результатов описания индекса в абстрактные индексы или ограничения схемы.

Так как SQLite не имеет способа получить метаданные обо всех индексах сразу, здесь выполняются дополнительные запросы. Имена ограничений SQLite нестабильны, и имена ограничений не будут соответствовать именам, используемым для создания таблицы. Это ограничение возможностей метаданных SQLite.

Параметры

Cake\Database\Schema\TableSchema $schema

Объект таблицы, к которому необходимо добавить индекс или ограничение.

array $row

Данные строки из describeIndexSql.

Возвращаемое значение

void

convertOptionsDescription() public

convertOptionsDescription(Cake\Database\Schema\TableSchema $schema, array $row): void

Преобразование данных параметров в параметры таблицы.

Параметры

Cake\Database\Schema\TableSchema $schema

Экземпляр таблицы.

array $row

Строка данных.

Возвращаемое значение

void

createTableSql() public

createTableSql(Cake\Database\Schema\TableSchema $schema, string[] $columns, string[] $constraints, string[] $indexes): string[]

Генерация SQL для создания таблицы.

Параметры

Cake\Database\Schema\TableSchema $schema
string[] $columns
string[] $constraints
string[] $indexes

Возвращаемое значение

string[]

describeColumnSql() public

describeColumnSql(string $tableName, array $config): array

Генерация SQL для описания таблицы.

Параметры

string $tableName
array $config

Возвращаемое значение

array

describeForeignKeySql() public

describeForeignKeySql(string $tableName, array $config): array

Генерация SQL для описания внешних ключей в таблице.

Параметры

string $tableName
array $config

Возвращаемое значение

array

describeIndexSql() public

describeIndexSql(string $tableName, array $config): array

Генерация SQL для описания индексов в таблице.

Параметры

string $tableName
array $config

Возвращаемое значение

array

describeOptionsSql() public

describeOptionsSql(string $tableName, array $config): array

Генерация SQL для описания параметров таблицы.

Параметры

string $tableName

Имя таблицы.

array $config

Настройка подключения.

Возвращаемое значение

array

dropConstraintSql() public

dropConstraintSql(Cake\Database\Schema\TableSchema $schema): array

Генерация SQL-запросов для удаления ограничений внешнего ключа из таблицы

SQLite не может правильно обработать удаление ограничения из существующей таблицы. Этот метод ничего не делает.

Параметры

Cake\Database\Schema\TableSchema $schema

Экземпляр таблицы, из которой удаляются ограничения внешнего ключа.

Возвращаемое значение

array

dropTableSql() public

dropTableSql(Cake\Database\Schema\TableSchema $schema): array

Сгенерировать SQL для удаления таблицы.

Параметры

Cake\Database\Schema\TableSchema $schema

Экземпляр схемы

Возвращаемое значение

array

hasSequences() public

hasSequences(): bool

Возвращает, есть ли в этом соединении с SQLite какие-либо таблицы, содержащие последовательности.

Возвращаемое значение

bool

indexSql() public

indexSql(Cake\Database\Schema\TableSchema $schema, string $name): string

Сгенерировать фрагмент SQL для одного индекса в таблице.

Параметры

Cake\Database\Schema\TableSchema $schema
string $name

Возвращаемое значение

string

listTablesSql() public

listTablesSql(array $config): array

Сгенерировать SQL для вывода списка таблиц.

Параметры

array $config

Возвращаемое значение

array

truncateTableSql() public

truncateTableSql(Cake\Database\Schema\TableSchema $schema): array

Сгенерировать SQL для обнуления таблицы.

Параметры

Cake\Database\Schema\TableSchema $schema

Возвращаемое значение

array

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

$_constraintsIdMap protected

Массив, содержащий имена ограничений внешних ключей. Необходим для обработки составных внешних ключей.

Тип

array

$_driver protected

Экземпляр используемого драйвера.

Тип

Cake\Database\DriverInterface

$_hasSequences protected

Есть ли в этом соединении с SQLite какие-либо таблицы, содержащие последовательности.

Тип

bool

© 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.Schema.SqliteSchemaDialect.html

Spec-Zone.ru

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