Класс PostgresSchemaDialect
Функции управления/отражения схемы для Postgres.
Краткое описание свойств
- $_driver protected
Cake\Database\DriverInterfaceИспользуемый экземпляр драйвера.
Краткое описание методов
-
__construct() public
Конструктор
-
_applyTypeSpecificColumnConversion() protected
Попытка использования соответствующего типа базы данных для преобразования определения SQL-столбца в абстрактное определение типа.
-
_convertColumn() protected
Преобразование определения столбца в абстрактные типы.
-
_convertConstraint() protected
Добавление/обновление ограничения в объект схемы.
-
_convertConstraintColumns() protected
Преобразование ссылок на ограничения внешнего ключа в допустимый строковый список.
-
_convertOnClause() protected
Преобразование строковых выражений ON в абстрактные.
-
_defaultValue() protected
Обработка значения по умолчанию.
-
_foreignOnClause() protected
Генерация выражения ON для внешнего ключа.
-
_getTypeSpecificColumnSql() protected
Попытка использования соответствующего типа базы данных для генерации SQL-фрагмента для одного столбца в таблице.
-
_keySql() protected
Вспомогательный метод для генерации фрагментов SQL для ключей.
-
addConstraintSql() public
Генерация SQL-запросов для добавления ограничений внешних ключей к таблице
-
columnSql() public
Генерация SQL-фрагмента для одного столбца в таблице.
-
constraintSql() public
Генерация SQL-фрагментов для определения ограничений таблицы.
-
convertColumnDescription() public
Преобразование результатов описания поля в абстрактные поля схемы.
-
convertForeignKeyDescription() public
Преобразование описания внешнего ключа в ограничения объекта таблицы.
-
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 для удаления таблицы.
-
indexSql() public
Генерация SQL-фрагмента для одного индекса в таблице.
-
listTablesSql() public
Генерация SQL для вывода списка таблиц и представлений.
-
listTablesWithoutViewsSql() public
Генерация SQL для вывода списка таблиц, исключая все представления.
-
truncateTableSql() public
Генерация SQL для усечения таблицы.
Подробное описание методов
__construct() public
__construct(Cake\Database\DriverInterface $driver)
Конструктор
Этот конструктор подключит драйвер, так что методы, такие как columnSql() и другие, будут возвращать ошибку, если драйвер не подключён.
Параметры
-
Cake\Database\DriverInterface$driver Используемый драйвер.
_applyTypeSpecificColumnConversion() protected
_applyTypeSpecificColumnConversion(string $columnType, array $definition): array|null
Попытка использовать соответствующий тип базы данных для преобразования определения SQL-столбца в абстрактное определение типа.
Параметры
-
string$columnType Тип столбца.
-
array$definition Определение столбца.
Возвращает
array|null_convertColumn() protected
_convertColumn(string $column): array<string, mixed>
Преобразование определения столбца в абстрактные типы.
Возвращаемый тип будет типом, который может обработать Cake\Database\TypeFactory.
Параметры
-
string$column Тип столбца + длина
Возвращает
array<string, mixed>Вызывает исключение
Cake\Database\Exception\DatabaseExceptionпри невозможности обработки столбца.
_convertConstraint() protected
_convertConstraint(Cake\Database\Schema\TableSchema $schema, string $name, string $type, array $row): void
Добавление/обновление ограничения в объект схемы.
Параметры
-
Cake\Database\Schema\TableSchema$schema Таблица для обновления.
-
string$name Имя индекса.
-
string$type Тип индекса.
-
array$row Запись метаданных для обновления.
Возвращает
void_convertConstraintColumns() protected
_convertConstraintColumns(array<string>|string $references): string
Преобразование ссылок ограничений внешнего ключа в допустимый строковый список
Параметры
-
array<string>|string$references Ссылки столбцов для ограничения внешнего ключа
Возвращает
string_convertOnClause() protected
_convertOnClause(string $clause): string
Преобразование строковых on-условий в абстрактные.
Параметры
-
string$clause
Возвращает
string_defaultValue() protected
_defaultValue(string|int|null $default): string|int|null
Обработка значения по умолчанию.
Postgres включает в значения по умолчанию данные последовательности и информацию о приведении типов. Нам нужно их удалить.
Параметры
-
string|int|null$default Значение по умолчанию.
Возвращает
string|int|null_foreignOnClause() protected
_foreignOnClause(string $on): string
Генерация ON-условия для внешнего ключа.
Параметры
-
string$on Условие on
Возвращает
string_getTypeSpecificColumnSql() protected
_getTypeSpecificColumnSql(string $columnType, Cake\Database\Schema\TableSchemaInterface $schema, string $column): string|null
Попытка использовать соответствующий тип базы данных для генерации SQL фрагмента для одного столбца в таблице.
Параметры
-
string$columnType Тип столбца.
-
Cake\Database\Schema\TableSchemaInterface$schema Экземпляр схемы таблицы, в которой находится столбец.
-
string$column Имя столбца.
Возвращает
string|null_keySql() protected
_keySql(string $prefix, array<string, mixed> $data): string
Вспомогательный метод для генерации SQL-фрагментов ключей.
Параметры
-
string$prefix Префикс ключа
-
array<string, mixed>$data Данные ключа.
Возвращает
stringaddConstraintSql() public
addConstraintSql(Cake\Database\Schema\TableSchema $schema): array
Генерация SQL запросов, необходимых для добавления ограничений внешнего ключа в таблицу
Параметры
-
Cake\Database\Schema\TableSchema$schema
Возвращает
arraycolumnSql() public
columnSql(Cake\Database\Schema\TableSchema $schema, string $name): string
Генерация SQL-фрагмента для одного столбца в таблице.
Параметры
-
Cake\Database\Schema\TableSchema$schema -
string$name
Возвращает
stringconstraintSql() public
constraintSql(Cake\Database\Schema\TableSchema $schema, string $name): string
Генерация SQL-фрагментов для определения ограничений таблицы.
Параметры
-
Cake\Database\Schema\TableSchema$schema -
string$name
Возвращает
stringconvertColumnDescription() public
convertColumnDescription(Cake\Database\Schema\TableSchema $schema, array $row): void
Преобразование результатов описания поля в абстрактные поля схемы.
Параметры
-
Cake\Database\Schema\TableSchema$schema -
array$row
Возвращает
voidconvertForeignKeyDescription() public
convertForeignKeyDescription(Cake\Database\Schema\TableSchema $schema, array $row): void
Преобразование описания внешнего ключа в ограничения в объекте таблицы.
Параметры
-
Cake\Database\Schema\TableSchema$schema -
array$row
Возвращает
voidconvertIndexDescription() public
convertIndexDescription(Cake\Database\Schema\TableSchema $schema, array $row): void
Преобразование результатов описания индекса в абстрактные индексы или ограничения схемы.
Параметры
-
Cake\Database\Schema\TableSchema$schema -
array$row
Возвращает
voidconvertOptionsDescription() public
convertOptionsDescription(Cake\Database\Schema\TableSchema $schema, array $row): void
Преобразование данных опций в опции таблицы.
Параметры
-
Cake\Database\Schema\TableSchema$schema Экземпляр таблицы.
-
array$row Строка данных.
Возвращает
voidcreateTableSql() public
createTableSql(Cake\Database\Schema\TableSchema $schema, array<string> $columns, array<string> $constraints, array<string> $indexes): array<string>
Генерация SQL для создания таблицы.
Параметры
-
Cake\Database\Schema\TableSchema$schema -
array<string>$columns -
array<string>$constraints -
array<string>$indexes
Возвращает
array<string>describeColumnSql() public
describeColumnSql(string $tableName, array<string, mixed> $config): array
Генерация SQL для описания таблицы.
Параметры
-
string$tableName -
array<string, mixed>$config
Возвращает
arraydescribeForeignKeySql() public
describeForeignKeySql(string $tableName, array<string, mixed> $config): array
Генерация SQL для описания внешних ключей в таблице.
Параметры
-
string$tableName -
array<string, mixed>$config
Возвращает
arraydescribeIndexSql() public
describeIndexSql(string $tableName, array<string, mixed> $config): array
Сгенерировать SQL для описания индексов в таблице.
Параметры
-
string$tableName -
array<string, mixed>$config
Возвращает
arraydescribeOptionsSql() public
describeOptionsSql(string $tableName, array<string, mixed> $config): array
Сгенерировать SQL для описания параметров таблицы
Параметры
-
string$tableName Имя таблицы.
-
array<string, mixed>$config Настройка подключения.
Возвращает
arraydropConstraintSql() public
dropConstraintSql(Cake\Database\Schema\TableSchema $schema): array
Сгенерировать SQL запросы для удаления ограничений внешних ключей из таблицы
Параметры
-
Cake\Database\Schema\TableSchema$schema
Возвращает
arraydropTableSql() public
dropTableSql(Cake\Database\Schema\TableSchema $schema): array
Сгенерировать SQL для удаления таблицы.
Параметры
-
Cake\Database\Schema\TableSchema$schema Экземпляр таблицы
Возвращает
arrayindexSql() public
indexSql(Cake\Database\Schema\TableSchema $schema, string $name): string
Сгенерировать фрагмент SQL для отдельного индекса в таблице.
Параметры
-
Cake\Database\Schema\TableSchema$schema -
string$name
Возвращает
stringlistTablesSql() public
listTablesSql(array<string, mixed> $config): array
Сгенерировать SQL для вывода списка таблиц и представлений.
Параметры
-
array<string, mixed>$config Настройка подключения для получения таблиц.
Возвращает
arraylistTablesWithoutViewsSql() public
listTablesWithoutViewsSql(array<string, mixed> $config): array<mixed>
Сгенерировать SQL для вывода списка таблиц, исключая представления.
Параметры
-
array<string, mixed>$config Настройка подключения для получения таблиц.
Возвращает
array<mixed>truncateTableSql() public
truncateTableSql(Cake\Database\Schema\TableSchema $schema): array
Сгенерировать SQL для усечения таблицы.
Параметры
-
Cake\Database\Schema\TableSchema$schema
Возвращает
arrayПодробное описание свойств
$_driver protected
Используемый экземпляр драйвера.
Тип
Cake\Database\DriverInterface
© 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.4/class-Cake.Database.Schema.PostgresSchemaDialect.html