Класс BaseSchema
Базовый класс для реализации схем.
Этот класс содержит методы, общие для различных диалектов SQL.
Прямые подклассы
- Cake\Database\Schema\MysqlSchema
- Cake\Database\Schema\PostgresSchema
- Cake\Database\Schema\SqliteSchema
- Cake\Database\Schema\SqlserverSchema
Краткое описание свойств
- Инстанс используемого драйвера.
$_driverprotected
Краткое описание методов
- __construct() publicКонструктор
- _convertConstraintColumns() protected
Преобразует ссылки на ограничения внешнего ключа в допустимый строковый список
- _convertOnClause() protectedПреобразование строковых условий ON в абстрактные.
- _foreignOnClause() protectedГенерирует условие ON для внешнего ключа.
- Генерирует SQL-запросы для добавления ограничений внешних ключей в таблицу
- Генерирует SQL-фрагмент для одного столбца в таблице.
- Генерирует SQL-фрагменты для определения ограничений таблицы.
- Преобразование результатов описания полей в абстрактные поля схемы.
- Преобразование описания внешнего ключа в ограничения объекта Table.
- Преобразование результатов описания индексов в абстрактные индексы или ограничения схемы.
- convertOptionsDescription() publicПреобразование данных опций в параметры таблицы.
- Генерирует SQL для создания таблицы.
- Генерирует SQL для описания столбца таблицы.
- Генерирует SQL для описания внешних ключей в таблице.
- Генерирует SQL для описания индексов в таблице.
- describeOptionsSql() publicГенерирует SQL для описания параметров таблицы
- Генерирует SQL-запросы для удаления ограничений внешних ключей из таблицы
- dropTableSql() publicГенерирует SQL для удаления таблицы.
- Генерирует SQL-фрагмент для одного индекса в таблице.
- Генерирует SQL для вывода списка таблиц.
- Генерирует SQL для обнуления таблицы.
Подробное описание методов
__construct()source public
__construct( Cake\Database\Driver $driver )
Конструктор
Этот конструктор подключит драйвер, так что методы, такие как columnSql() и другие, завершатся с ошибкой, если драйвер не подключён.
Параметры
-
Cake\Database\Driver$driver - Драйвер для использования.
_convertConstraintColumns()source protected
_convertConstraintColumns( string|array $references )
Преобразует ссылки на ограничения внешнего ключа в допустимый строковый список
Параметры
- string|array
$references - Ссылающиеся столбцы заявления о ограничении внешнего ключа
Возвращает
string_convertOnClause()source protected
_convertOnClause( string $clause )
Преобразует строковые условия ON в абстрактные.
Параметры
- string
$clause - Условие ON для преобразования.
Возвращает
string|null_foreignOnClause()source protected
_foreignOnClause( string|null $on )
Генерирует условие ON для внешнего ключа.
Параметры
- string|null
$on - Условие ON
Возвращает
stringaddConstraintSql()source abstract public
addConstraintSql( Cake\Database\Schema\TableSchema $schema )
Генерирует SQL-запросы для добавления ограничений внешних ключей в таблицу
Параметры
-
Cake\Database\Schema\TableSchema$schema - Инстанс таблицы, к которой относятся ограничения внешних ключей.
Возвращает
arraySQL фрагмент.
columnSql()source abstract public
columnSql( Cake\Database\Schema\TableSchema $schema , string $name )
Генерирует SQL-фрагмент для одного столбца в таблице.
Параметры
-
Cake\Database\Schema\TableSchema$schema - Инстанс таблицы, в которой находится столбец.
- string
$name - Имя столбца.
Возвращает
stringSQL фрагмент.
constraintSql()source abstract public
constraintSql( Cake\Database\Schema\TableSchema $schema , string $name )
Генерирует SQL-фрагменты для определения ограничений таблицы.
Параметры
-
Cake\Database\Schema\TableSchema$schema - Инстанс таблицы, в которой находится столбец.
- string
$name - Имя столбца.
Возвращает
stringSQL фрагмент.
convertColumnDescription()source abstract public
convertColumnDescription( Cake\Database\Schema\TableSchema $schema , array $row )
Преобразует результаты описания полей в абстрактные поля схемы.
Параметры
-
Cake\Database\Schema\TableSchema$schema - Объект таблицы, к которому необходимо добавить поля.
- array
$row - Данные строки из
describeColumnSql.
convertForeignKeyDescription()source abstract public
convertForeignKeyDescription( Cake\Database\Schema\TableSchema $schema , array $row )
Преобразовать описание внешнего ключа в ограничения объекта таблицы.
Параметры
-
Cake\Database\Schema\TableSchema$schema Объект таблицы, к которому нужно добавить ограничение.
- массив
$row - Данные строки из
describeForeignKeySql.
convertIndexDescription()source abstract public
convertIndexDescription( Cake\Database\Schema\TableSchema $schema , array $row )
Преобразовать результаты описания индекса в абстрактные индексы или ограничения схемы.
Параметры
-
Cake\Database\Schema\TableSchema$schema Объект таблицы, к которому нужно добавить индекс или ограничение.
- массив
$row - Данные строки из
describeIndexSql.
convertOptionsDescription()source public
convertOptionsDescription( Cake\Database\Schema\TableSchema $schema , array $row )
Преобразовать данные опций в опции таблицы.
Параметры
-
Cake\Database\Schema\TableSchema$schema - Экземпляр таблицы.
- массив
$row - Строка данных.
createTableSql()source abstract public
createTableSql( Cake\Database\Schema\TableSchema $schema , array $columns , array $constraints , array $indexes )
Сгенерировать SQL для создания таблицы.
Параметры
-
Cake\Database\Schema\TableSchema$schema - Экземпляр таблицы.
- массив
$columns - Столбцы для таблицы.
- массив
$constraints - Ограничения для таблицы.
- массив
$indexes - Индексы для таблицы.
Возвращает
массивSQL-запросы для создания таблицы.
describeColumnSql()source abstract public
describeColumnSql( string $tableName , array $config )
Сгенерировать SQL для описания таблицы.
Параметры
- строка
$tableName - Имя таблицы, для получения информации.
- массив
$config - Настройка соединения.
Возвращает
массивМассив (sql, params) для выполнения.
describeForeignKeySql()source abstract public
describeForeignKeySql( string $tableName , array $config )
Сгенерировать SQL для описания внешних ключей в таблице.
Параметры
- строка
$tableName - Имя таблицы для получения информации.
- массив
$config - Настройка соединения.
Возвращает
массивМассив (sql, params) для выполнения.
describeIndexSql()source abstract public
describeIndexSql( string $tableName , array $config )
Сгенерировать SQL для описания индексов в таблице.
Параметры
- строка
$tableName - Имя таблицы для получения информации.
- массив
$config - Настройка соединения.
Возвращает
массивМассив (sql, params) для выполнения.
describeOptionsSql()source public
describeOptionsSql( string $tableName , array $config )
Сгенерировать SQL для описания опций таблицы
Параметры
- строка
$tableName - Имя таблицы.
- массив
$config - Настройка соединения.
Возвращает
массивSQL-запросы для получения опций таблицы.
dropConstraintSql()source abstract public
dropConstraintSql( Cake\Database\Schema\TableSchema $schema )
Сгенерировать SQL-запросы для удаления ограничений внешних ключей из таблицы
Параметры
-
Cake\Database\Schema\TableSchema$schema - Экземпляр таблицы, из которой нужно удалить ограничения внешних ключей.
Возвращает
массивSQL-фрагмент.
dropTableSql()source public
dropTableSql( Cake\Database\Schema\TableSchema $schema )
Сгенерировать SQL для удаления таблицы.
Параметры
-
Cake\Database\Schema\TableSchema$schema - Экземпляр схемы
Возвращает
массивSQL-запросы для удаления таблицы.
indexSql()source abstract public
indexSql( Cake\Database\Schema\TableSchema $schema , string $name )
Сгенерировать SQL-фрагмент для отдельного индекса в таблице.
Параметры
-
Cake\Database\Schema\TableSchema$schema - Объект таблицы, в котором находится столбец.
- строка
$name - Имя столбца.
Возвращает
строкаSQL-фрагмент.
listTablesSql()source abstract public
listTablesSql( array $config )
Сгенерировать SQL для перечисления таблиц.
Параметры
- массив
$config Настройка соединения для получения таблиц.
Возвращает
массивМассив (sql, params) для выполнения.
truncateTableSql()source abstract public
truncateTableSql( Cake\Database\Schema\TableSchema $schema )
Сгенерировать SQL для обнуления таблицы.
Параметры
-
Cake\Database\Schema\TableSchema$schema - Экземпляр таблицы.
Возвращает
массивSQL-запросы для обнуления таблицы.
Подробное описание свойств
© 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.4/class-Cake.Database.Schema.BaseSchema.html