Класс SqliteSchema
Функции управления и отражения схемы для Sqlite
- Cake\Database\Schema\BaseSchema
-
Cake\Database\Schema\SqliteSchema
Подробное описание методов
_convertColumnsource protected
_convertColumn( string $column )
Преобразовать определение столбца к абстрактным типам.
Возвращаемый тип будет типом, который может обработать Cake\Database\Type.
Параметры
- строка
$column - Тип столбца + длина
Возвращает
arrayМассив информации о столбце.
Исключения
Cake\Database\Exceptionпри невозможности разобрать тип столбца
addConstraintSqlsource public
addConstraintSql( Cake\Database\Schema\Table $table )
Создать SQL-запросы для добавления ограничений внешнего ключа в таблицу
SQLite не может правильно обрабатывать добавление ограничения к существующей таблице. Этот метод ничего не делает.
Параметры
-
Cake\Database\Schema\Table$table - Экземпляр таблицы, к которому применяются ограничения внешнего ключа.
Возвращает
arraySQL-фрагмент.
columnSqlsource public
columnSql( Cake\Database\Schema\Table $table , string $name )
Создать SQL-фрагмент для одного столбца в таблице.
Параметры
-
Cake\Database\Schema\Table$table - Экземпляр таблицы, в которой находится столбец.
- строка
$name - Имя столбца.
Возвращает
stringSQL-фрагмент.
Исключения
Cake\Database\Exceptionесли тип столбца неизвестен
constraintSqlsource public
constraintSql( Cake\Database\Schema\Table $table , string $name )
Создать SQL-фрагменты для определения ограничений таблицы.
Примечание: целочисленные первичные ключи вернут ''. Это сделано намеренно, так как SQLite требует, чтобы целочисленные первичные ключи были определены в определении столбца.
Параметры
-
Cake\Database\Schema\Table$table - Экземпляр таблицы, в которой находится столбец.
- строка
$name - Имя столбца.
Возвращает
stringSQL-фрагмент.
convertColumnDescriptionsource public
convertColumnDescription( Cake\Database\Schema\Table $table , array $row )
Преобразовать результаты описания поля в абстрактные поля схемы.
Параметры
-
Cake\Database\Schema\Table$table - Объект таблицы, к которому нужно добавить поля.
- массив
$row - Данные строки из
describeColumnSql.
convertForeignKeyDescriptionsource public
convertForeignKeyDescription( Cake\Database\Schema\Table $table , array $row )
Преобразовать описание внешнего ключа в ограничения объекта Table.
Параметры
-
Cake\Database\Schema\Table$table - Объект таблицы, к которому нужно добавить ограничение.
- массив
$row - Данные строки из
describeForeignKeySql.
convertIndexDescriptionsource public
convertIndexDescription( Cake\Database\Schema\Table $table , array $row )
Преобразовать результаты описания индекса в абстрактные индексы или ограничения схемы.
Поскольку SQLite не имеет способа получения метаданных обо всех индексах сразу, здесь выполняются дополнительные запросы. Имена ограничений SQLite нестабильны, и имена ограничений не будут соответствовать тем, которые использовались для создания таблицы. Это ограничение в возможностях метаданных SQLite.
Параметры
-
Cake\Database\Schema\Table$table - Объект таблицы, к которому нужно добавить индекс или ограничение.
- массив
$row - Данные строки из
describeIndexSql.
createTableSqlsource public
createTableSql( Cake\Database\Schema\Table $table , array $columns , array $constraints , array $indexes )
Создать SQL для создания таблицы.
Параметры
-
Cake\Database\Schema\Table$table - Экземпляр таблицы.
- массив
$columns - Столбцы, которые будут в таблице.
- массив
$constraints - Ограничения для таблицы.
- массив
$indexes - Индексы для таблицы.
Возвращает
arraySQL-запросы для создания таблицы.
describeColumnSqlsource public
describeColumnSql( string $tableName , array $config )
Создать SQL для описания таблицы.
Параметры
- строка
$tableName - Имя таблицы, для которой нужно получить информацию.
- массив
$config - Настройка соединения.
Возвращает
arrayМассив (sql, params) для выполнения.
describeForeignKeySqlsource public
describeForeignKeySql( string $tableName , array $config )
Создать SQL для описания внешних ключей в таблице.
Параметры
- строка
$tableName - Имя таблицы, для которой нужно получить информацию.
- массив
$config - Настройка соединения.
Возвращает
arrayМассив (sql, params) для выполнения.
describeIndexSqlsource public
describeIndexSql( string $tableName , array $config )
Создать SQL для описания индексов в таблице.
Параметры
- строка
$tableName - Имя таблицы, для которой нужно получить информацию.
- массив
$config - Настройка соединения.
Возвращает
arrayМассив (sql, params) для выполнения.
dropConstraintSqlsource public
dropConstraintSql( Cake\Database\Schema\Table $table )
Создать SQL-запросы для удаления ограничений внешнего ключа из таблицы
SQLite не может правильно обрабатывать удаление ограничения из существующей таблицы. Этот метод ничего не делает.
Параметры
-
Cake\Database\Schema\Table$table - Экземпляр таблицы, содержащий ограничения внешнего ключа.
Возвращает
arraySQL-фрагмент.
hasSequencessource public
hasSequences( )
Возвращает, есть ли в этом соединении с SQLite какая-либо таблица, содержащая последовательности.
Возвращает
booleanbool
indexSqlsource public
indexSql( Cake\Database\Schema\Table $table , string $name )
Создать SQL-фрагмент для отдельного индекса в таблице.
Параметры
-
Cake\Database\Schema\Table$table - Объект таблицы, в которой находится столбец.
- строка
$name - Имя столбца.
Возвращает
stringSQL-фрагмент.
listTablesSqlsource public
listTablesSql( array $config )
Создать SQL для перечисления таблиц.
Параметры
- массив
$config - Настройка соединения, которую использовать для получения таблиц.
Возвращает
arrayМассив (sql, params) для выполнения.
truncateTableSqlsource public
truncateTableSql( Cake\Database\Schema\Table $table )
Генерировать SQL для усечения таблицы.
Параметры
-
Cake\Database\Schema\Table$table - Экземпляр таблицы.
Возвращает
arraySQL-запросы для усечения таблицы.
Методы, унаследованные от Cake\Database\Schema\BaseSchema
__constructsource public
__construct( Cake\Database\Driver $driver )
Конструктор
Этот конструктор подключит драйвер, так что методы, такие как columnSql() и другие, завершатся ошибкой, если драйвер не подключен.
Параметры
-
Cake\Database\Driver$driver - Используемый драйвер.
_convertConstraintColumnssource protected
_convertConstraintColumns( string|array $references )
Преобразовать ссылки на ограничения внешнего ключа в корректный строковый список.
Параметры
- string|array
$references - Ссылающиеся столбцы ограничения внешнего ключа.
Возвращает
stringстрока
_convertOnClausesource protected
_convertOnClause( string $clause )
Преобразовать строковые ON-запросы в абстрактные.
Параметры
- string
$clause - ON-запрос для преобразования.
Возвращает
string|nullстрока|null
_foreignOnClausesource protected
_foreignOnClause( string|null $on )
Генерировать ON-запрос для внешнего ключа.
Параметры
- string|null
$on - ON-запрос.
Возвращает
stringстрока
convertOptionsDescriptionsource public
convertOptionsDescription( Cake\Database\Schema\Table $table , array $row )
Преобразовать данные опций в опции таблицы.
Параметры
-
Cake\Database\Schema\Table$table - Экземпляр таблицы.
- массив
$row - Строка данных.
describeOptionsSqlsource public
describeOptionsSql( string $tableName , array $config )
Генерировать SQL для описания опций таблицы
Параметры
- строка
$tableName - Название таблицы.
- массив
$config - Настройка подключения.
Возвращает
arraySQL-запросы для получения опций таблицы.
dropTableSqlsource public
dropTableSql( Cake\Database\Schema\Table $table )
Генерировать SQL для удаления таблицы.
Параметры
-
Cake\Database\Schema\Table$table - Экземпляр таблицы
Возвращает
arraySQL-запросы для удаления таблицы.
Краткое описание свойств
Свойства, унаследованные от Cake\Database\Schema\BaseSchema
© 2005–2016 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.
http://api.cakephp.org/3.1/class-Cake.Database.Schema.SqliteSchema.html