Класс yii\db\ColumnSchemaBuilder
| Наследование | yii\db\ColumnSchemaBuilder » yii\base\Object |
|---|---|
| Реализует | yii\base\Configurable |
| Подклассы | yii\db\cubrid\ColumnSchemaBuilder, yii\db\mysql\ColumnSchemaBuilder, yii\db\oci\ColumnSchemaBuilder, yii\db\sqlite\ColumnSchemaBuilder |
| Доступно с версии | 2.0.6 |
| Исходный код | https://github.com/yiisoft/yii2/blob/master/framework/db/ColumnSchemaBuilder.php |
ColumnSchemaBuilder помогает определить типы схемы базы данных, используя интерфейс PHP.
См. yii\db\SchemaBuilderTrait для более подробного описания и примеров использования.
Публичные свойства
| Свойство | Тип | Описание | Определено в |
|---|---|---|---|
| $categoryMap | массив | Сопоставление абстрактных типов столбцов (ключи) с категориями типов (значения). | yii\db\ColumnSchemaBuilder |
| $comment | строка | Значение комментария к столбцу. | yii\db\ColumnSchemaBuilder |
| $db | yii\db\Connection | Текущее подключение к базе данных. | yii\db\ColumnSchemaBuilder |
Защищенные свойства
| Свойство | Тип | Описание | Определено в |
|---|---|---|---|
| $after | строка | Столбец, после которого будет добавлен этот столбец. | yii\db\ColumnSchemaBuilder |
| $append | смешанный | Строка SQL, которая будет добавлена к определению схемы столбца. | yii\db\ColumnSchemaBuilder |
| $check | строка | Ограничение CHECK для столбца. | yii\db\ColumnSchemaBuilder |
| $default | смешанный | Значение по умолчанию для столбца. | yii\db\ColumnSchemaBuilder |
| $isFirst | булево | Вставлять ли этот столбец в начало таблицы. | yii\db\ColumnSchemaBuilder |
| $isNotNull | булево|null | Может ли столбец быть NULL. | yii\db\ColumnSchemaBuilder |
| $isUnique | булево | Значения столбца должны быть уникальными. | yii\db\ColumnSchemaBuilder |
| $isUnsigned | булево | Значения столбца должны быть беззнаковыми. | yii\db\ColumnSchemaBuilder |
| $length | целое число|строка|массив | Размер или точность столбца. | yii\db\ColumnSchemaBuilder |
| $type | строка | Определение типа столбца, например INTEGER, VARCHAR, DATETIME и т. д. | yii\db\ColumnSchemaBuilder |
Публичные методы
| Метод | Описание | Определено в |
|---|---|---|
| __call() | Вызывает метод, который не является методом класса. | yii\base\Object |
| __construct() | Создает экземпляр билдера схемы столбца, задавая тип и точность значения. | yii\db\ColumnSchemaBuilder |
| __get() | Возвращает значение свойства объекта. | yii\base\Object |
| __isset() | Проверяет, установлено ли свойство, т.е. определено и не равно null. | yii\base\Object |
| __set() | Устанавливает значение свойства объекта. | yii\base\Object |
| __toString() | Создает полную строку для схемы столбца. | yii\db\ColumnSchemaBuilder |
| __unset() | Устанавливает свойство объекта в null. | yii\base\Object |
| after() | Добавляет ограничение AFTER к столбцу. | yii\db\ColumnSchemaBuilder |
| append() | Указывает дополнительную SQL-строку, которая будет добавлена к определению столбца. | yii\db\ColumnSchemaBuilder |
| canGetProperty() | Возвращает значение, указывающее, можно ли считать свойство. | yii\base\Object |
| canSetProperty() | Возвращает значение, указывающее, можно ли установить свойство. | yii\base\Object |
| check() | Устанавливает ограничение CHECK для столбца. | yii\db\ColumnSchemaBuilder |
| className() | Возвращает полное квалифицированное имя этого класса. | yii\base\Object |
| comment() | Устанавливает комментарий для столбца. | yii\db\ColumnSchemaBuilder |
| defaultExpression() | Указывает выражение SQL по умолчанию для столбца. | yii\db\ColumnSchemaBuilder |
| defaultValue() | Устанавливает значение по умолчанию для столбца. | yii\db\ColumnSchemaBuilder |
| first() | Добавляет ограничение FIRST к столбцу. | yii\db\ColumnSchemaBuilder |
| hasMethod() | Возвращает значение, указывающее, определен ли метод. | yii\base\Object |
| hasProperty() | Возвращает значение, указывающее, определено ли свойство. | yii\base\Object |
| init() | Инициализирует объект. | yii\base\Object |
| notNull() | Добавляет ограничение NOT NULL к столбцу. | yii\db\ColumnSchemaBuilder |
| null() | Добавляет ограничение NULL к столбцу. | yii\db\ColumnSchemaBuilder |
| unique() | Добавляет ограничение UNIQUE к столбцу. | yii\db\ColumnSchemaBuilder |
| unsigned() | Отмечает столбец как беззнаковый. | yii\db\ColumnSchemaBuilder |
Защищенные методы
| Метод | Описание | Определено в |
|---|---|---|
| buildAfterString() | Создаёт ограничение after для столбца. По умолчанию — не поддерживается. | yii\db\ColumnSchemaBuilder |
| buildAppendString() | Создаёт пользовательскую строку, добавляемую к определению столбца. | yii\db\ColumnSchemaBuilder |
| buildCheckString() | Создаёт ограничение check для столбца. | yii\db\ColumnSchemaBuilder |
| buildCommentString() | Создаёт описание комментария для столбца. | yii\db\ColumnSchemaBuilder |
| buildCompleteString() | Возвращает полное определение столбца из входного формата | yii\db\ColumnSchemaBuilder |
| buildDefaultString() | Создаёт значение по умолчанию для столбца. | yii\db\ColumnSchemaBuilder |
| buildFirstString() | Создаёт первое ограничение для столбца. По умолчанию — не поддерживается. | yii\db\ColumnSchemaBuilder |
| buildLengthString() | Создаёт часть определения длины/точности столбца. | yii\db\ColumnSchemaBuilder |
| buildNotNullString() | Создаёт ограничение not null для столбца. | yii\db\ColumnSchemaBuilder |
| buildUniqueString() | Создаёт ограничение уникальности для столбца. | yii\db\ColumnSchemaBuilder |
| buildUnsignedString() | Создаёт строку unsigned для столбца. По умолчанию — не поддерживается. | yii\db\ColumnSchemaBuilder |
| getTypeCategory() | Возвращает категорию типа столбца. | yii\db\ColumnSchemaBuilder |
Константы
| Константа | Значение | Описание | Определено в |
|---|---|---|---|
| CATEGORY_NUMERIC | 'numeric' | yii\db\ColumnSchemaBuilder | |
| CATEGORY_OTHER | 'other' | yii\db\ColumnSchemaBuilder | |
| CATEGORY_PK | 'pk' | yii\db\ColumnSchemaBuilder | |
| CATEGORY_STRING | 'string' | yii\db\ColumnSchemaBuilder | |
| CATEGORY_TIME | 'time' | yii\db\ColumnSchemaBuilder |
Подробное описание свойств
$after защищённое свойство (доступно с версии 2.0.8)
Столбец, после которого будет добавлен данный столбец.
protected string $after = null
$append защищённое свойство (доступно с версии 2.0.9)
Строка SQL, добавляемая к определению схемы столбца.
protected mixed $append = null
$categoryMap публичное свойство (доступно с версии 2.0.8)
Сопоставление абстрактных типов столбцов (ключи) с категориями типов (значения).
public array $categoryMap = [\yii\db\Schema::TYPE_PK => self::CATEGORY_PK, \yii\db\Schema::TYPE_UPK => self::CATEGORY_PK, \yii\db\Schema::TYPE_BIGPK => self::CATEGORY_PK, \yii\db\Schema::TYPE_UBIGPK => self::CATEGORY_PK, \yii\db\Schema::TYPE_CHAR => self::CATEGORY_STRING, \yii\db\Schema::TYPE_STRING => self::CATEGORY_STRING, \yii\db\Schema::TYPE_TEXT => self::CATEGORY_STRING, \yii\db\Schema::TYPE_SMALLINT => self::CATEGORY_NUMERIC, \yii\db\Schema::TYPE_INTEGER => self::CATEGORY_NUMERIC, \yii\db\Schema::TYPE_BIGINT => self::CATEGORY_NUMERIC, \yii\db\Schema::TYPE_FLOAT => self::CATEGORY_NUMERIC, \yii\db\Schema::TYPE_DOUBLE => self::CATEGORY_NUMERIC, \yii\db\Schema::TYPE_DECIMAL => self::CATEGORY_NUMERIC, \yii\db\Schema::TYPE_DATETIME => self::CATEGORY_TIME, \yii\db\Schema::TYPE_TIMESTAMP => self::CATEGORY_TIME, \yii\db\Schema::TYPE_TIME => self::CATEGORY_TIME, \yii\db\Schema::TYPE_DATE => self::CATEGORY_TIME, \yii\db\Schema::TYPE_BINARY => self::CATEGORY_OTHER, \yii\db\Schema::TYPE_BOOLEAN => self::CATEGORY_NUMERIC, \yii\db\Schema::TYPE_MONEY => self::CATEGORY_NUMERIC]
$check защищённое свойство
Ограничение CHECK для столбца.
protected string $check = null
$comment публичное свойство (доступно с версии 2.0.8)
Значение комментария к столбцу.
public string $comment = null
$db публичное свойство (доступно с версии 2.0.8)
Текущее подключение к базе данных. Используется главным образом для безопасного экранирования строк при построении окончательной строки схемы столбца.
public yii\db\Connection $db = null
$default защищённое свойство
Значение по умолчанию для столбца.
protected mixed $default = null
$isFirst защищённое свойство (доступно с версии 2.0.8)
Указывает, нужно ли вставлять этот столбец в начало таблицы.
protected boolean $isFirst = null
$isNotNull защищённое свойство
Указывает, является ли столбец не допускающим null. Если это true, будет добавлено ограничение NOT NULL. Если это false, будет добавлено ограничение NULL.
protected boolean|null $isNotNull = null
$isUnique защищённое свойство
Указывает, должны ли значения столбца быть уникальными. Если это true, будет добавлено ограничение UNIQUE.
protected boolean $isUnique = false
$isUnsigned защищённое свойство (доступно с версии 2.0.7)
Указывает, должны ли значения столбца быть без знака. Если это true, будет добавлено ключевое слово UNSIGNED.
protected boolean $isUnsigned = false
$length защищённое свойство
Определение размера или точности столбца. Это то, что идёт в скобках после типа столбца. Это может быть строка, целое число или массив. Если это массив, значения массива будут объединены в строку, разделённую запятыми.
protected integer|string|array $length = null
$type защищённое свойство
Определение типа столбца, например, INTEGER, VARCHAR, DATETIME и т. д.
protected string $type = null
Подробное описание методов
__construct() public method
Создать экземпляр билдера схемы столбца, задав тип и точность значения.
| public void __construct ( $type, $length = null, $db = null, $config = [] ) | ||
|---|---|---|
| $type | string |
Тип столбца. См. $type. |
| $length | integer|string|array |
Длина или точность столбца. См. $length. |
| $db | yii\db\Connection |
Текущее подключение к базе данных. См. $db. |
| $config | array |
Параметры имя-значение, которые будут использованы для инициализации свойств объекта |
__toString() public method
Создаёт полную строку для схемы столбца
| public string __toString ( ) |
|---|
after() public method (доступно начиная с версии 2.0.8)
Добавляет ограничение AFTER к столбцу.
Примечание: Поддерживается только MySQL, Oracle и Cubrid.
| public $this after ( $after ) | ||
|---|---|---|
| $after | string |
Столбец после которого $this столбец будет добавлен. |
append() public method (доступно начиная с версии 2.0.9)
Указывает дополнительный SQL, который будет добавлен к определению столбца.
Модификаторы позиции будут добавлены после определения столбца в базах данных, которые их поддерживают.
| public $this append ( $sql ) | ||
|---|---|---|
| $sql | string |
Строка SQL, которая будет добавлена. |
buildAfterString() protected method (доступно начиная с версии 2.0.8)
Создаёт ограничение after для столбца. По умолчанию не поддерживается.
| protected string buildAfterString ( ) | ||
|---|---|---|
| return | string |
Строка, содержащая ограничение AFTER. |
buildAppendString() protected method (доступно начиная с версии 2.0.9)
Создаёт настраиваемую строку, которая добавляется к определению столбца.
| protected string buildAppendString ( ) | ||
|---|---|---|
| return | string |
Настраиваемая строка для добавления. |
buildCheckString() protected method
Создаёт ограничение check для столбца.
| protected string buildCheckString ( ) | ||
|---|---|---|
| return | string |
Строка, содержащая ограничение CHECK. |
buildCommentString() protected method (доступно начиная с версии 2.0.8)
Создаёт спецификацию комментария для столбца.
| protected string buildCommentString ( ) | ||
|---|---|---|
| return | string |
Строка, содержащая ключевое слово COMMENT и сам комментарий |
buildCompleteString() protected method (доступно начиная с версии 2.0.8)
Возвращает полное определение столбца из входного формата
| protected string buildCompleteString ( $format ) | ||
|---|---|---|
| $format | string |
Формат определения. |
| return | string |
Строка, содержащая полное определение столбца. |
buildDefaultString() protected method
Создаёт спецификацию значения по умолчанию для столбца.
| protected string buildDefaultString ( ) | ||
|---|---|---|
| return | string |
Строка со значением по умолчанию столбца. |
buildFirstString() protected method (доступно начиная с версии 2.0.8)
Создаёт первое ограничение для столбца. По умолчанию не поддерживается.
| protected string buildFirstString ( ) | ||
|---|---|---|
| return | string |
Строка, содержащая ограничение FIRST. |
buildLengthString() protected method
Создаёт часть длины/точности столбца.
| protected string buildLengthString ( ) |
|---|
buildNotNullString() protected method
Создаёт ограничение not null для столбца.
| protected string buildNotNullString ( ) | ||
|---|---|---|
| return | string |
Возвращает 'NOT NULL', если $isNotNull истинно, 'NULL', если $isNotNull ложно или пустую строку в противном случае. |
buildUniqueString() protected method
Создаёт ограничение уникальности для столбца.
| protected string buildUniqueString ( ) | ||
|---|---|---|
| return | string |
Возвращает строку 'UNIQUE', если $isUnique истинно, в противном случае возвращает пустую строку. |
buildUnsignedString() protected method (доступно начиная с версии 2.0.7)
Создаёт строку unsigned для столбца. По умолчанию не поддерживается.
| protected string buildUnsignedString ( ) | ||
|---|---|---|
| return | string |
Строка, содержащая ключевое слово UNSIGNED. |
check() public method
Устанавливает ограничение CHECK для столбца.
| public $this check ( $check ) | ||
|---|---|---|
| $check | string |
SQL ограничения |
comment() public method (доступно начиная с версии 2.0.8)
Указывает комментарий для столбца.
| public $this comment ( $comment ) | ||
|---|---|---|
| $comment | string |
Комментарий |
defaultExpression() public method (доступно начиная с версии 2.0.7)
Указывает выражение SQL по умолчанию для столбца.
| public $this defaultExpression ( $default ) | ||
|---|---|---|
| $default | string |
Выражение значения по умолчанию. |
defaultValue() public method
Указывает значение по умолчанию для столбца.
| public $this defaultValue ( $default ) | ||
|---|---|---|
| $default | mixed |
Значение по умолчанию. |
first() public method (available since version 2.0.8)
Добавляет ограничение FIRST к столбцу.
Примечание: Поддерживается только MySQL, Oracle и Cubrid.
| public $this first ( ) |
|---|
getTypeCategory() protected method (available since version 2.0.8)
Возвращает категорию типа столбца.
| protected string getTypeCategory ( ) | ||
|---|---|---|
| return | string |
Строка, содержащая имя категории типа столбца. |
notNull() public method
Добавляет ограничение NOT NULL к столбцу.
| public $this notNull ( ) |
|---|
null() public method (available since version 2.0.9)
Добавляет ограничение NULL к столбцу
| public $this null ( ) |
|---|
unique() public method
Добавляет ограничение UNIQUE к столбцу.
| public $this unique ( ) |
|---|
unsigned() public method (available since version 2.0.7)
Помечает столбец как без знака.
| public $this unsigned ( ) |
|---|
© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc-2.0/yii-db-columnschemabuilder.html