Spec-Zone.ru › CakePHP 4.2

Интерфейс 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

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

  • isTemporary() public

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

  • name() public

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

  • removeColumn() public

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

  • setColumnType() public

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

  • setOptions() public

    Устанавливает параметры таблицы.

  • setTemporary() public

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

  • typeMap() public

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

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

addColumn() public

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

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

Атрибуты

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

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

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

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

Параметры

string $name

Имя столбца

string|array $attrs

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

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

$this

addConstraint() public

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

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

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

Атрибуты

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

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

Параметры

string $name

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

array|string $attrs

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

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

$this

Исключения

Cake\Database\Exception\DatabaseException

addIndex() public

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

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

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

Атрибуты

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

Параметры

string $name

Имя индекса.

array|string $attrs

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

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

$this

Исключения

Cake\Database\Exception\DatabaseException

baseColumnType() public

baseColumnType(string $column): string|null

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

Параметры

string $column

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

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

string|null

columns() public

columns(): string[]

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

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

string[]

constraints() public

constraints(): string[]

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

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

string[]

defaultValues() public

defaultValues(): array

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

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

array

dropConstraint() public

dropConstraint(string $name): $this

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

Параметры

string $name

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

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

$this

getColumn() public

getColumn(string $name): array|null

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

Параметры

string $name

Имя столбца.

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

array|null

getColumnType() public

getColumnType(string $name): string|null

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

Параметры

string $name

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

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

string|null

getConstraint() public

getConstraint(string $name): array|null

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

Параметры

string $name

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

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

array|null

getIndex() public

getIndex(string $name): array|null

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

Параметры

string $name

Имя индекса.

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

array|null

getOptions() public

getOptions(): array

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

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

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

array

getPrimaryKey() public

getPrimaryKey(): array

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

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

array

hasAutoincrement() public

hasAutoincrement(): bool

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

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

bool

hasColumn() public

hasColumn(string $name): bool

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

Параметры

string $name

Имя столбца.

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

bool

indexes() public

indexes(): string[]

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

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

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 $options): $this

Устанавливает параметры таблицы.

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

Параметры

array $options

Параметры для установки, или null для чтения параметров.

Возвращает

$this

setTemporary() public

setTemporary(bool $temporary): $this

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

Параметры

bool $temporary

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

Возвращает

$this

typeMap() public

typeMap(): array

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

Возвращает

array

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

Spec-Zone.ru

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