Spec-Zone.ru › CakePHP 4.3

Интерфейс TableSchemaInterface

Интерфейс, используемый объектами TableSchema базы данных.

Пространство имен: Cake\Database\Schema

Константы

  • string
    TYPE_BIGINTEGER
    'biginteger'

    Тип колонки Big Integer

  • string
    TYPE_BINARY
    'binary'

    Тип колонки Binary

  • string
    TYPE_BINARY_UUID
    'binaryuuid'

    Тип колонки Binary UUID

  • string
    TYPE_BOOLEAN
    'boolean'

    Тип колонки Boolean

  • string
    TYPE_CHAR
    'char'

    Тип колонки Char

  • string
    TYPE_DATE
    'date'

    Тип колонки Date

  • string
    TYPE_DATETIME
    'datetime'

    Тип колонки DateTime

  • string
    TYPE_DATETIME_FRACTIONAL
    'datetimefractional'

    Тип колонки DateTime с дробной частью секунды

  • string
    TYPE_DECIMAL
    'decimal'

    Тип колонки Decimal

  • string
    TYPE_FLOAT
    'float'

    Тип колонки Float

  • string
    TYPE_INTEGER
    'integer'

    Тип колонки Integer

  • string
    TYPE_JSON
    'json'

    Тип колонки JSON

  • string
    TYPE_SMALLINTEGER
    'smallinteger'

    Тип колонки Small Integer

  • string
    TYPE_STRING
    'string'

    Тип колонки String

  • string
    TYPE_TEXT
    'text'

    Тип колонки Text

  • string
    TYPE_TIME
    'time'

    Тип колонки Time

  • string
    TYPE_TIMESTAMP
    'timestamp'

    Тип колонки Timestamp

  • string
    TYPE_TIMESTAMP_FRACTIONAL
    'timestampfractional'

    Тип колонки Timestamp с дробной частью секунды

  • string
    TYPE_TIMESTAMP_TIMEZONE
    'timestamptimezone'

    Тип колонки Timestamp с часовым поясом

  • string
    TYPE_TINYINTEGER
    'tinyinteger'

    Тип колонки Tiny Integer

  • string
    TYPE_UUID
    'uuid'

    Тип колонки UUID

END_OF_DOCUMENT_MARKER

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

  • addColumn() public

    Добавить столбец в таблицу.

  • addConstraint() public

    Добавить ограничение.

  • addIndex() public

    Добавить индекс.

  • baseColumnType() public

    Возвращает имя базового типа для указанного столбца. Представляет тип данных в базе данных, на котором основан более сложный класс.

  • columns() public

    Получить имена столбцов в таблице.

  • constraints() public

    Получить имена всех ограничений в таблице.

  • defaultValues() public

    Получить хеш столбцов и их значений по умолчанию.

  • dropConstraint() public

    Удалить ограничение.

  • getColumn() public

    Получить данные столбца в таблице.

  • getColumnType() public

    Возвращает тип столбца или null, если столбец не существует.

  • getConstraint() public

    Получить информацию об ограничении по имени.

  • getIndex() public

    Получить информацию об индексе по имени.

  • getOptions() public

    Получить опции для таблицы.

  • getPrimaryKey() public

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

  • hasAutoincrement() public

    Проверить, определен ли столбец autoIncrement в таблице.

  • hasColumn() public

    Возвращает true, если столбец существует в схеме.

  • indexes() public

    Получить имена всех индексов в таблице.

  • isNullable() public

    Проверить, является ли поле nullable.

  • isTemporary() public

    Получить, является ли таблица временной в базе данных.

  • name() public

    Получить имя таблицы.

  • removeColumn() public

    Удалить столбец из схемы таблицы.

  • setColumnType() public

    Установить тип столбца.

  • setOptions() public

    Установить опции для таблицы.

  • setTemporary() public

    Установить, является ли таблица временной в базе данных.

  • typeMap() public

    Возвращает массив, где ключи — имена столбцов в схеме, а значения — соответствующие им типы данных в базе данных.

END_OF_DOCUMENT_MARKER

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

addColumn() public

addColumn(string $name, array<string, mixed>|string $attrs): $this

Добавить столбец в таблицу.

Атрибуты

Столбцы могут иметь несколько атрибутов:

  • type Тип столбца. Это должен быть один из абстрактных типов CakePHP.
  • length Длина столбца.
  • precision Количество десятичных знаков для хранения типов float и decimal.
  • default Значение по умолчанию для столбца.
  • null Может ли столбец содержать NULL значения.
  • fixed Является ли столбец столбцом фиксированной длины. Это присутствует/действительно только для строковых столбцов.
  • unsigned Является ли столбец беззнаковым. Это присутствует/действительно только для столбцов типа integer, decimal, float.

В дополнение к указанным выше ключам, следующие ключи реализованы в некоторых, но не во всех диалектах баз данных:

  • comment Комментарий к столбцу.

Параметры

string $name

Имя столбца

array<string, mixed>|string $attrs

Атрибуты для столбца или имя типа.

Возвращает

$this

addConstraint() public

addConstraint(string $name, array<string, mixed>|string $attrs): $this

Добавить ограничение.

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

Атрибуты

  • type Тип добавляемого ограничения.
  • columns Столбцы в индексе.
  • references Таблица, столбец, на который ссылается внешний ключ.
  • update Поведение при обновлении. Варианты: 'restrict', 'setNull', 'cascade', 'noAction'.
  • delete Поведение при удалении. Варианты: 'restrict', 'setNull', 'cascade', 'noAction'.

Значение по умолчанию для 'update' & 'delete' - 'cascade'.

Параметры

string $name

Имя ограничения.

array<string, mixed>|string $attrs

Атрибуты для ограничения. Если строка, она будет использоваться как type.

Возвращает

$this

Выбрасывает

Cake\Database\Exception\DatabaseException

addIndex() public

addIndex(string $name, array<string, mixed>|string $attrs): $this

Добавить индекс.

Используется для добавления индексов и индексов полного текста на платформах, которые их поддерживают.

Атрибуты

  • type Тип добавляемого индекса.
  • columns Столбцы в индексе.

Параметры

string $name

Имя индекса.

array<string, mixed>|string $attrs

Атрибуты для индекса. Если строка, она будет использоваться как type.

Возвращает

$this

Выбрасывает

Cake\Database\Exception\DatabaseException

baseColumnType() public

baseColumnType(string $column): string|null

Возвращает базовое имя типа для предоставленного столбца. Это представляет тип базы данных, на котором основан более сложный класс.

Параметры

string $column

Имя столбца, для которого нужно получить базовый тип

Возвращает

string|null

columns() public

columns(): array<string>

Получить имена столбцов в таблице.

Возвращает

array<string>

constraints() public

constraints(): array<string>

Получить имена всех ограничений в таблице.

Возвращает

array<string>

defaultValues() public

defaultValues(): array<string, mixed>

Получить хеш столбцов и их значений по умолчанию.

Возвращает

array<string, mixed>

dropConstraint() public

dropConstraint(string $name): $this

Удалить ограничение.

Параметры

string $name

Имя ограничения для удаления

Возвращает

$this

getColumn() public

getColumn(string $name): array<string, mixed>|null

Получить данные столбца в таблице.

Параметры

string $name

Имя столбца.

Возвращает

array<string, mixed>|null

getColumnType() public

getColumnType(string $name): string|null

Возвращает тип столбца или null, если столбец не существует.

Параметры

string $name

Столбец, для которого нужно получить тип.

Возвращает

string|null

getConstraint() public

getConstraint(string $name): array<string, mixed>|null

Прочитать информацию об ограничении по имени.

Параметры

string $name

Имя ограничения.

Возвращает

array<string, mixed>|null

getIndex() public

getIndex(string $name): array<string, mixed>|null

Прочитать информацию об индексе по имени.

Параметры

string $name

Имя индекса.

Возвращает

array<string, mixed>|null

getOptions() public

getOptions(): array<string, mixed>

Получает параметры для таблицы.

Параметры таблицы позволяют устанавливать специфические для платформы параметры уровня таблицы. Например, тип движка в MySQL.

Возвращает

array<string, mixed>

getPrimaryKey() public

getPrimaryKey(): array<string>

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

Возвращает

array<string>

hasAutoincrement() public

hasAutoincrement(): bool

Проверить, определен ли в таблице столбец с автоинкрементом.

Возвращает

bool

hasColumn() public

hasColumn(string $name): bool

Возвращает true, если столбец существует в схеме.

Параметры

string $name

Имя столбца.

Возвращает

bool

indexes() public

indexes(): array<string>

Получить имена всех индексов в таблице.

Возвращает

array<string>

isNullable() public

isNullable(string $name): bool

Проверить, является ли поле допускающим NULL значения.

Отсутствующие столбцы допускают NULL значения.

Параметры

string $name

Столбец, для которого нужно получить тип.

Возвращает

bool

isTemporary() public

isTemporary(): bool

Получает, является ли таблица временной в базе данных.

Возвращает

bool

name() public

name(): string

Получить имя таблицы.

Возвращает

string

removeColumn() public

removeColumn(string $name): $this

Удалить столбец из схемы таблицы.

Если столбец не определен в таблице, ошибка не будет вызвана.

Параметры

string $name

Имя столбца

Возвращает

$this

setColumnType() public

setColumnType(string $name, string $type): $this

Устанавливает тип столбца.

Параметры

string $name

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

string $type

Тип, который нужно установить для столбца.

Возвращает

$this

setOptions() public

setOptions(array<string, mixed> $options): $this

Устанавливает опции для таблицы.

Опции таблицы позволяют установить опции уровня таблицы, специфичные для платформы. Например, тип движка в MySQL.

Параметры

array<string, mixed> $options

Опции для установки или null для чтения опций.

Возвращает

$this

setTemporary() public

setTemporary(bool $temporary): $this

Устанавливает, является ли таблица временной в базе данных.

Параметры

bool $temporary

Является ли таблица временной.

Возвращает

$this

typeMap() public

typeMap(): array<string, string>

Возвращает массив, где ключами являются имена столбцов в схеме, а значениями — тип данных базы данных, которые они имеют.

Возвращает

array<string, string>

© 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.3/interface-Cake.Database.Schema.TableSchemaInterface.html

Spec-Zone.ru

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