Spec-Zone.ru › CakePHP 3.1

Класс Таблица

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

Может быть заполнен с помощью API рефлексии или путем поэтапного построения экземпляра с помощью методов.

После создания экземпляры таблицы могут быть добавлены в объекты Schema\Collection. Их также можно преобразовать в SQL с помощью методов createSql(), dropSql() и truncateSql().

Пространство имён: Cake\База данных\Схема
Расположение Database/Schema/Table.php

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

__constructsource public

__construct( string $table , array $columns [] )

Конструктор.

Параметры

string $table
Имя таблицы.
array $columns необязательно []
Список столбцов для схемы.

_checkForeignKeysource protected

_checkForeignKey( array $attrs )

Вспомогательный метод для проверки/валидации внешних ключей.

Параметры

array $attrs
Атрибуты для установки.

Возвращает

array
массив

Выбрасывает

Cake\Database\Exception
При некорректном определении внешнего ключа.

addColumnsource public

addColumn( string $name , array $attrs )

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

Атрибуты

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

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

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

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

Параметры

string $name
Имя столбца
array $attrs
Атрибуты столбца.

Возвращает

mixed
$this

addConstraintsource public

addConstraint( string $name , array $attrs )

Добавление ограничения.

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

Атрибуты

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

По умолчанию для 'update' и 'delete' используется 'cascade'.

Параметры

string $name
Имя ограничения.
array $attrs
Атрибуты ограничения.

Возвращает

mixed
$this

Выбрасывает

Cake\Database\Exception
\Cake\Database\Исключение

addConstraintSqlsource public

addConstraintSql( Cake\Datasource\ConnectionInterface $connection )

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

Параметры

Cake\Datasource\ConnectionInterface $connection
Соединение для генерации SQL.

Возвращает

array
SQL для удаления таблицы.
END_OF_DOCUMENT_MARKER

addIndexsource public

addIndex( string $name , array $attrs )

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

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

Атрибуты

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

Параметры

string $name
Имя индекса.
array $attrs
Атрибуты индекса.

Возвращает

mixed
$this

Выбрасывает

Cake\Database\Exception
\Cake\Database\Exception

baseColumnTypesource public

baseColumnType( string $column )

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

Параметры

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

Возвращает

string
Имя базового типа

columnsource public

column( string $name )

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

Параметры

string $name
Имя столбца.

Возвращает

array|null
Данные столбца или null.

columnTypesource public

columnType( string $name , string $type null )

Устанавливает тип столбца или возвращает его текущий тип, если он не передан.

Параметры

string $name
Столбец, для которого нужно получить тип.
string $type опционально null
Тип, которому нужно установить столбец.

Возвращает

string|null
Тип столбца или null.

columnssource public

columns( )

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

Возвращает

array
массив

constraintsource public

constraint( string $name )

Считывает информацию о ограничении на основе имени.

Параметры

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

Возвращает

array|null
Массив данных ограничения или null

constraintssource public

constraints( )

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

Возвращает

array
массив

createSqlsource public

createSql( Cake\Datasource\ConnectionInterface $connection )

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

Использует соединение для доступа к диалекту схемы для генерации платформенно-специфического SQL.

Параметры

Cake\Datasource\ConnectionInterface $connection
Соединение, для которого нужно сгенерировать SQL

Возвращает

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

defaultValuessource public

defaultValues( )

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

Возвращает

array
массив

dropConstraintsource public

dropConstraint( string $name )

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

Параметры

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

dropConstraintSqlsource public

dropConstraintSql( Cake\Datasource\ConnectionInterface $connection )

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

Параметры

Cake\Datasource\ConnectionInterface $connection
Соединение, для которого нужно сгенерировать SQL.

Возвращает

array
SQL для удаления таблицы.

dropSqlsource public

dropSql( Cake\Datasource\ConnectionInterface $connection )

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

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

Параметры

Cake\Datasource\ConnectionInterface $connection
Подключение для генерации SQL.

Возвращает

array
SQL для удаления таблицы.

hasAutoincrementsource public

hasAutoincrement( )

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

Возвращает

boolean
bool

indexsource public

index( string $name )

Считывает информацию об индексе по имени.

Параметры

string $name
Имя индекса.

Возвращает

array|null
Массив данных индекса или null

indexessource public

indexes( )

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

Возвращает

array
массив

isNullablesource public

isNullable( string $name )

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

Отсутствующие столбцы являются nullable.

Параметры

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

Возвращает

boolean
Является ли поле nullable.

namesource public

name( )

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

Возвращает

string
строка

optionssource public

options( array|null $options null )

Получает/устанавливает параметры таблицы.

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

Параметры

array|null $options необязательно null
Параметры для установки или null для чтения параметров.

Возвращает

mixed
$this|массив Объект таблицы или массив параметров при чтении.

primaryKeysource public

primaryKey( )

Получает столбец(ы) первичного ключа.

Возвращает

array
Имя столбца(ов) первичного ключа. Если первичный ключ отсутствует, возвращается пустой список.

temporarysource public

temporary( boolean|null $set null )

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

Параметры

boolean|null $set необязательно null
Временный статус таблицы

Возвращает

mixed
$this|bool Объект таблицы или текущее значение временного статуса.

truncateSqlsource public

truncateSql( Cake\Datasource\ConnectionInterface $connection )

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

Параметры

Cake\Datasource\ConnectionInterface $connection
Подключение для генерации SQL.

Возвращает

array
SQL для усечения таблицы.

typeMapsource public

typeMap( )

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

Возвращает

array
массив

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

string ACTION_CASCADE

Действие каскадного обновления внешнего ключа

'cascade'
string ACTION_NO_ACTION

Действие без обновления внешнего ключа

'noAction'
string ACTION_RESTRICT

Действие ограничения при обновлении внешнего ключа

'restrict'
string ACTION_SET_DEFAULT

Действие по умолчанию при обновлении внешнего ключа

'setDefault'
string ACTION_SET_NULL

Действие установки значения NULL при обновлении внешнего ключа

'setNull'
string CONSTRAINT_FOREIGN

Тип ограничения внешнего ключа

'foreign'
string CONSTRAINT_PRIMARY

Тип ограничения первичного ключа

'primary'
string CONSTRAINT_UNIQUE

Тип ограничения уникальности

'unique'
string INDEX_FULLTEXT

Тип индекса FULLTEXT

'fulltext'
string INDEX_INDEX

Тип индекса INDEX

'index'

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

$_columnExtrassource

protected static array

Дополнительные свойства, специфичные для типа.

[
    'string' => [
        'fixed' => null,
    ],
    'integer' => [
        'unsigned' => null,
        'autoIncrement' => null,
    ],
    'biginteger' => [
        'unsigned' => null,
        'autoIncrement' => null,
    ],
    'decimal' => [
        'unsigned' => null,
    ],
    'float' => [
        'unsigned' => null,
    ],
]

$_columnKeyssource

protected static array

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

[
    'type' => null,
    'baseType' => null,
    'length' => null,
    'precision' => null,
    'null' => null,
    'default' => null,
    'comment' => null,
]

$_columnssource

protected array

Столбцы в таблице.

[]

$_constraintssource

protected array

Ограничения в таблице.

[]

$_indexKeyssource

protected static array

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

[
    'type' => null,
    'columns' => [],
    'length' => [],
    'references' => [],
    'update' => 'restrict',
    'delete' => 'restrict',
]

$_indexessource

protected array

Индексы в таблице.

[]

$_optionssource

protected array

Параметры для таблицы.

[]

$_tablesource

protected string

Имя таблицы

$_temporarysource

protected boolean

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

false

$_typeMapsource

protected array

Отображение столбцов к типам

[]

$_validConstraintTypessource

protected static array

Имена допустимых типов ограничений.

[
    self::CONSTRAINT_PRIMARY,
    self::CONSTRAINT_UNIQUE,
    self::CONSTRAINT_FOREIGN,
]

$_validForeignKeyActionssource

protected static array

Имена допустимых действий с внешними ключами.

[
    self::ACTION_CASCADE,
    self::ACTION_SET_NULL,
    self::ACTION_SET_DEFAULT,
    self::ACTION_NO_ACTION,
    self::ACTION_RESTRICT,
]

$_validIndexTypessource

protected static array

Имена допустимых типов индексов.

[
    self::INDEX_INDEX,
    self::INDEX_FULLTEXT,
]

© 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.Table.html

Spec-Zone.ru

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