Spec-Zone.ru › CakePHP 3.1

Класс SqliteSchema

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

Cake\Database\Schema\BaseSchema
Extended by Cake\Database\Schema\SqliteSchema
Пространство имён: Cake\Database\Schema
Расположение: Database/Schema/SqliteSchema.php

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

_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
Экземпляр таблицы, к которому применяются ограничения внешнего ключа.

Возвращает

array
SQL-фрагмент.

columnSqlsource public

columnSql( Cake\Database\Schema\Table $table , string $name )

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

Параметры

Cake\Database\Schema\Table $table
Экземпляр таблицы, в которой находится столбец.
строка $name
Имя столбца.

Возвращает

string
SQL-фрагмент.

Исключения

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

constraintSqlsource public

constraintSql( Cake\Database\Schema\Table $table , string $name )

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

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

Параметры

Cake\Database\Schema\Table $table
Экземпляр таблицы, в которой находится столбец.
строка $name
Имя столбца.

Возвращает

string
SQL-фрагмент.

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
Индексы для таблицы.

Возвращает

array
SQL-запросы для создания таблицы.

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
Экземпляр таблицы, содержащий ограничения внешнего ключа.

Возвращает

array
SQL-фрагмент.

hasSequencessource public

hasSequences( )

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

Возвращает

boolean
bool

indexSqlsource public

indexSql( Cake\Database\Schema\Table $table , string $name )

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

Параметры

Cake\Database\Schema\Table $table
Объект таблицы, в которой находится столбец.
строка $name
Имя столбца.

Возвращает

string
SQL-фрагмент.

listTablesSqlsource public

listTablesSql( array $config )

Создать SQL для перечисления таблиц.

Параметры

массив $config
Настройка соединения, которую использовать для получения таблиц.

Возвращает

array
Массив (sql, params) для выполнения.
END_OF_DOCUMENT_MARKER

truncateTableSqlsource public

truncateTableSql( Cake\Database\Schema\Table $table )

Генерировать SQL для усечения таблицы.

Параметры

Cake\Database\Schema\Table $table
Экземпляр таблицы.

Возвращает

array
SQL-запросы для усечения таблицы.

Методы, унаследованные от 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
Настройка подключения.

Возвращает

array
SQL-запросы для получения опций таблицы.

dropTableSqlsource public

dropTableSql( Cake\Database\Schema\Table $table )

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

Параметры

Cake\Database\Schema\Table $table
Экземпляр таблицы

Возвращает

array
SQL-запросы для удаления таблицы.

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

$_constraintsIdMapsource

protected массив

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

[]

Свойства, унаследованные от Cake\Database\Schema\BaseSchema

$_driversource

protected Cake\Database\Driver

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

© 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

Spec-Zone.ru

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