Интерфейс TableSchemaInterface
Интерфейс, используемый объектами схемы таблицы базы данных.
Устарело 3.5.0: Используйте Cake\Database\TableSchemaAwareInterface вместо этого.
- Cake\Database\Schema\TableSchemaInterface реализует Cake\Datasource\SchemaInterface
Прямые реализаторы
Резюме констант
-
stringTYPE_BIGINTEGER'biginteger' -
stringTYPE_BINARY'binary' -
stringTYPE_BINARY_UUID'binaryuuid' -
stringTYPE_BOOLEAN'boolean' -
stringTYPE_DATE'date' -
stringTYPE_DATETIME'datetime' -
stringTYPE_DECIMAL'decimal' -
stringTYPE_FLOAT'float' -
stringTYPE_INTEGER'integer' -
stringTYPE_JSON'json' -
stringTYPE_SMALLINTEGER'smallinteger' -
stringTYPE_STRING'string' -
stringTYPE_TEXT'text' -
stringTYPE_TIME'time' -
stringTYPE_TIMESTAMP'timestamp' -
stringTYPE_TINYINTEGER'tinyinteger' -
stringTYPE_UUID'uuid'
Резюме методов
- addConstraint() publicДобавить ограничение.
- addIndex() publicДобавить индекс.
- constraints() publicПолучить имена всех ограничений в таблице.
- dropConstraint() publicУдалить ограничение.
- getConstraint() publicПрочитать информацию об ограничении по имени.
- getIndex() publicПрочитать информацию об индексе по имени.
- hasAutoincrement() publicПроверить, определён ли столбец autoIncrement в таблице.
- indexes() publicПолучить имена всех индексов в таблице.
- isTemporary() publicПолучить, является ли таблица временной в базе данных.
- primaryKey() publicПолучить столбец(ы), используемый для первичного ключа.
- setTemporary() publicУстанавливает, является ли таблица временной в базе данных.
Подробное описание метода
addConstraint()source 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 - Атрибуты для ограничения.
Возвращает
$this
addIndex()source public
addIndex( string $name , array $attrs )
Добавить индекс.
Используется для добавления индексов и полных текстовых индексов в платформах, которые их поддерживают.
Атрибуты
-
typeТип добавляемого индекса. -
columnsСтолбцы в индексе.
Параметры
- string
$name - Имя индекса.
- array
$attrs - Атрибуты для индекса.
Возвращает
$this
constraints()source public
constraints( )
Получить имена всех ограничений в таблице.
Возвращает
массивdropConstraint()source public
dropConstraint( string $name )
Удалить ограничение.
Параметры
- string
$name - Имя ограничения для удаления
Возвращает
$this
getConstraint()source public
getConstraint( string $name )
Прочитать информацию об ограничении по имени.
Параметры
- string
$name - Имя ограничения.
Возвращает
массив|nullМассив данных ограничения или null
getIndex()source public
getIndex( string $name )
Прочитать информацию об индексе по имени.
Параметры
- string
$name - Имя индекса.
Возвращает
массив|nullМассив данных индекса или null
hasAutoincrement()source public
hasAutoincrement( )
Проверка, определён ли в таблице столбец автоинкремента.
Возвращает
booleanisTemporary()source public
isTemporary( )
Получение значения, является ли таблица временной в базе данных.
Возвращает
booleanТекущее значение временной таблицы.
primaryKey()source public
primaryKey( )
Получение столбца(ов), используемого(ых) для первичного ключа.
Возвращает
массивИмя(на) столбца(ов) первичного ключа. Пустой список будет возвращён, если таблица не имеет первичного ключа.
setTemporary()source public
setTemporary( boolean $temporary )
Установка значения, является ли таблица временной в базе данных.
Параметры
- boolean
$temporary - Является ли таблица временной.
Возвращает
$this
© 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.6/class-Cake.Database.Schema.TableSchemaInterface.html