Spec-Zone.ru › CakePHP 3.8

Класс SqliteSchema

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

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

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

  • $_constraintsIdMap protected
    array

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

  • $_hasSequences protected
    boolean
    Существуют ли в этом соединении таблицы SQLite, содержащие последовательности.

Унаследованные свойства

  • _driver

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

  • _convertColumn() protected
    Преобразование определения столбца в абстрактные типы.
  • _defaultValue() protected
    Обработка значения по умолчанию.
  • addConstraintSql() public
    Генерация SQL-запросов для добавления ограничений внешних ключей в таблицу.
  • columnSql() public
    Генерация SQL-фрагмента для отдельного столбца в таблице.
  • constraintSql() public
    Генерация SQL-фрагментов для определения ограничений таблицы.
  • convertColumnDescription() public
    Преобразование результатов описания поля в абстрактные поля схемы.
  • convertForeignKeyDescription() public
    Преобразование описания внешнего ключа в ограничения объекта Table.
  • convertIndexDescription() public
    Преобразование результатов описания индекса в абстрактные индексы или ограничения схемы.
  • createTableSql() public
    Генерация SQL для создания таблицы.
  • describeColumnSql() public
    Генерация SQL для описания столбца таблицы.
  • describeForeignKeySql() public
    Генерация SQL для описания внешних ключей в таблице.
  • describeIndexSql() public
    Генерация SQL для описания индексов в таблице.
  • dropConstraintSql() public
    Генерация SQL-запросов для удаления ограничений внешних ключей из таблицы.
  • hasSequences() public

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

  • indexSql() public
    Генерация SQL-фрагмента для отдельного индекса в таблице.
  • listTablesSql() public
    Генерация SQL для перечисления таблиц.
  • truncateTableSql() public
    Генерация SQL для обнуления таблицы.

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

_convertColumn()source protected

_convertColumn( string $column )

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

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

Параметры

строка $column
Тип столбца + длина

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

массив
Массив информации о столбце.

Исключения

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

_defaultValue()source protected

_defaultValue( string|null $default )

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

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

Параметры

строка|null $default
Значение по умолчанию.

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

строка|null

addConstraintSql()source public

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

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

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

Параметры

Cake\Database\Schema\TableSchema $schema
Экземпляр таблицы, к которому относятся ограничения внешних ключей.

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

массив
SQL-фрагмент.

columnSql()source public

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

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

Параметры

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

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

строка
SQL-фрагмент.

Исключения

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

constraintSql()source public

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

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

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

Параметры

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

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

строка
SQL-фрагмент.

convertColumnDescription()source public

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

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

Параметры

Cake\Database\Schema\TableSchema $schema
Объект таблицы, к которому необходимо добавить поля.
массив $row
Данные строки из describeColumnSql.

convertForeignKeyDescription()source public

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

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

Параметры

Cake\Database\Schema\TableSchema $schema

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

массив $row
Данные строки из describeForeignKeySql.

convertIndexDescription()source public

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

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

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

Параметры

Cake\Database\Schema\TableSchema $schema

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

массив $row
Данные строки из describeIndexSql.
END_OF_DOCUMENT_MARKER

createTableSql()source 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 public

describeColumnSql( string $tableName , array $config )

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

Параметры

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

Возвращает

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

describeForeignKeySql()source public

describeForeignKeySql( string $tableName , array $config )

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

Параметры

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

Возвращает

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

describeIndexSql()source public

describeIndexSql( string $tableName , array $config )

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

Параметры

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

Возвращает

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

dropConstraintSql()source public

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

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

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

Параметры

Cake\Database\Schema\TableSchema $schema
Экземпляр таблицы, к которому относятся ограничения внешнего ключа.

Возвращает

массив
SQL-фрагмент.

hasSequences()source public

hasSequences( )

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

Возвращает

булево

indexSql()source public

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

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

Параметры

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

Возвращает

строка
SQL-фрагмент.

listTablesSql()source public

listTablesSql( array $config )

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

Параметры

массив $config

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

Возвращает

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

truncateTableSql()source public

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

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

Параметры

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

Возвращает

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

Наследованные методы из Cake\Database\Schema\BaseSchema

__construct()source public

__construct( Cake\Database\Driver $driver )

Конструктор

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

Параметры

Cake\Database\Driver $driver
Используемый драйвер.

_convertConstraintColumns()source protected

_convertConstraintColumns( string|array $references )

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

Параметры

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

Возвращает

строка

_convertOnClause()source protected

_convertOnClause( string $clause )

Преобразовать строковые on-условия в абстрактные.

Параметры

строка $clause
Условие on для преобразования.

Возвращает

строка|null

_foreignOnClause()source protected

_foreignOnClause( string|null $on )

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

Параметры

строка|null $on
Условие on.

Возвращает

строка

convertOptionsDescription()source public

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

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

Параметры

Cake\Database\Schema\TableSchema $schema
Экземпляр таблицы.
массив $row
Строка данных.

describeOptionsSql()source public

describeOptionsSql( string $tableName , array $config )

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

Параметры

строка $tableName
Имя таблицы.
массив $config
Настройка соединения.

Возвращает

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

dropTableSql()source public

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

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

Параметры

Cake\Database\Schema\TableSchema $schema
Экземпляр схемы.

Возвращает

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

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

$_constraintsIdMapsource

protected массив

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

[]

$_hasSequencessource

protected булево

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

© 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/3.8/class-Cake.Database.Schema.SqliteSchema.html

Spec-Zone.ru

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