Class yii\db\ColumnSchemaBuilder
Inheritance | yii\db\ColumnSchemaBuilder » yii\base\BaseObject |
---|---|
Implements | yii\base\Configurable |
Subclasses | yii\db\cubrid\ColumnSchemaBuilder, yii\db\mysql\ColumnSchemaBuilder, yii\db\oci\ColumnSchemaBuilder, yii\db\sqlite\ColumnSchemaBuilder |
Available since version | 2.0.6 |
Source Code | https://github.com/yiisoft/yii2/blob/master/framework/db/ColumnSchemaBuilder.php |
ColumnSchemaBuilder helps to define database schema types using a PHP interface.
See yii\db\SchemaBuilderTrait for more detailed description and usage examples.
Public Properties
Property | Type | Description | Defined By |
---|---|---|---|
$categoryMap | array | Mapping of abstract column types (keys) to type categories (values). | yii\db\ColumnSchemaBuilder |
$comment | string | Comment value of the column. | yii\db\ColumnSchemaBuilder |
$db | yii\db\Connection | The current database connection. | yii\db\ColumnSchemaBuilder |
Protected Properties
Property | Type | Description | Defined By |
---|---|---|---|
$after | string | The column after which this column will be added. | yii\db\ColumnSchemaBuilder |
$append | mixed | SQL string to be appended to column schema definition. | yii\db\ColumnSchemaBuilder |
$check | string | The CHECK constraint for the column. |
yii\db\ColumnSchemaBuilder |
$default | mixed | Default value of the column. | yii\db\ColumnSchemaBuilder |
$isFirst | boolean | Whether this column is to be inserted at the beginning of the table. | yii\db\ColumnSchemaBuilder |
$isNotNull | boolean|null | Whether the column is or not nullable. | yii\db\ColumnSchemaBuilder |
$isUnique | boolean | Whether the column values should be unique. | yii\db\ColumnSchemaBuilder |
$isUnsigned | boolean | Whether the column values should be unsigned. | yii\db\ColumnSchemaBuilder |
$length | integer|string|array | Column size or precision definition. | yii\db\ColumnSchemaBuilder |
$type | string | The column type definition such as INTEGER, VARCHAR, DATETIME, etc. | yii\db\ColumnSchemaBuilder |
Public Methods
Method | Description | Defined By |
---|---|---|
__call() | Calls the named method which is not a class method. | yii\base\BaseObject |
__construct() | Create a column schema builder instance giving the type and value precision. | yii\db\ColumnSchemaBuilder |
__get() | Returns the value of an object property. | yii\base\BaseObject |
__isset() | Checks if a property is set, i.e. defined and not null. | yii\base\BaseObject |
__set() | Sets value of an object property. | yii\base\BaseObject |
__toString() | Builds the full string for the column's schema. | yii\db\ColumnSchemaBuilder |
__unset() | Sets an object property to null. | yii\base\BaseObject |
after() | Adds an AFTER constraint to the column. |
yii\db\ColumnSchemaBuilder |
append() | Specify additional SQL to be appended to column definition. | yii\db\ColumnSchemaBuilder |
canGetProperty() | Returns a value indicating whether a property can be read. | yii\base\BaseObject |
canSetProperty() | Returns a value indicating whether a property can be set. | yii\base\BaseObject |
check() | Sets a CHECK constraint for the column. |
yii\db\ColumnSchemaBuilder |
className() | Returns the fully qualified name of this class. | yii\base\BaseObject |
comment() | Specifies the comment for column. | yii\db\ColumnSchemaBuilder |
defaultExpression() | Specify the default SQL expression for the column. | yii\db\ColumnSchemaBuilder |
defaultValue() | Specify the default value for the column. | yii\db\ColumnSchemaBuilder |
first() | Adds an FIRST constraint to the column. |
yii\db\ColumnSchemaBuilder |
hasMethod() | Returns a value indicating whether a method is defined. | yii\base\BaseObject |
hasProperty() | Returns a value indicating whether a property is defined. | yii\base\BaseObject |
init() | Initializes the object. | yii\base\BaseObject |
notNull() | Adds a NOT NULL constraint to the column. |
yii\db\ColumnSchemaBuilder |
null() | Adds a NULL constraint to the column. |
yii\db\ColumnSchemaBuilder |
unique() | Adds a UNIQUE constraint to the column. |
yii\db\ColumnSchemaBuilder |
unsigned() | Marks column as unsigned. | yii\db\ColumnSchemaBuilder |
Protected Methods
Method | Description | Defined By |
---|---|---|
buildAfterString() | Builds the after constraint for the column. Defaults to unsupported. | yii\db\ColumnSchemaBuilder |
buildAppendString() | Builds the custom string that's appended to column definition. | yii\db\ColumnSchemaBuilder |
buildCheckString() | Builds the check constraint for the column. | yii\db\ColumnSchemaBuilder |
buildCommentString() | Builds the comment specification for the column. | yii\db\ColumnSchemaBuilder |
buildCompleteString() | Returns the complete column definition from input format. | yii\db\ColumnSchemaBuilder |
buildDefaultString() | Builds the default value specification for the column. | yii\db\ColumnSchemaBuilder |
buildFirstString() | Builds the first constraint for the column. Defaults to unsupported. | yii\db\ColumnSchemaBuilder |
buildLengthString() | Builds the length/precision part of the column. | yii\db\ColumnSchemaBuilder |
buildNotNullString() | Builds the not null constraint for the column. | yii\db\ColumnSchemaBuilder |
buildUniqueString() | Builds the unique constraint for the column. | yii\db\ColumnSchemaBuilder |
buildUnsignedString() | Builds the unsigned string for column. Defaults to unsupported. | yii\db\ColumnSchemaBuilder |
getTypeCategory() | Returns the category of the column type. | yii\db\ColumnSchemaBuilder |
Constants
Constant | Value | Description | Defined By |
---|---|---|---|
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 |
Property Details
The column after which this column will be added.
SQL string to be appended to column schema definition.
Mapping of abstract column types (keys) to type categories (values).
The CHECK
constraint for the column.
Comment value of the column.
The current database connection. It is used mainly to escape strings safely when building the final column schema string.
Default value of the column.
Whether this column is to be inserted at the beginning of the table.
Whether the column is or not nullable. If this is true
, a NOT NULL
constraint will be added.
If this is false
, a NULL
constraint will be added.
Whether the column values should be unique. If this is true
, a UNIQUE
constraint will be added.
Whether the column values should be unsigned. If this is true
, an UNSIGNED
keyword will be added.
Column size or precision definition. This is what goes into the parenthesis after the column type. This can be either a string, an integer or an array. If it is an array, the array values will be joined into a string separated by comma.
The column type definition such as INTEGER, VARCHAR, DATETIME, etc.
Method Details
Create a column schema builder instance giving the type and value precision.
public void __construct ( $type, $length = null, $db = null, $config = [] ) | ||
$type | string | Type of the column. See $type. |
$length | integer|string|array | Length or precision of the column. See $length. |
$db | yii\db\Connection | The current database connection. See $db. |
$config | array | Name-value pairs that will be used to initialize the object properties |
Builds the full string for the column's schema.
public string __toString ( ) |
Adds an AFTER
constraint to the column.
Note: MySQL, Oracle and Cubrid support only.
public $this after ( $after ) | ||
$after | string | The column after which $this column will be added. |
Specify additional SQL to be appended to column definition.
Position modifiers will be appended after column definition in databases that support them.
public $this append ( $sql ) | ||
$sql | string | The SQL string to be appended. |
Builds the after constraint for the column. Defaults to unsupported.
protected string buildAfterString ( ) | ||
return | string | A string containing the AFTER constraint. |
---|
Builds the custom string that's appended to column definition.
protected string buildAppendString ( ) | ||
return | string | Custom string to append. |
---|
Builds the check constraint for the column.
protected string buildCheckString ( ) | ||
return | string | A string containing the CHECK constraint. |
---|
Builds the comment specification for the column.
protected string buildCommentString ( ) | ||
return | string | A string containing the COMMENT keyword and the comment itself |
---|
Returns the complete column definition from input format.
protected string buildCompleteString ( $format ) | ||
$format | string | The format of the definition. |
return | string | A string containing the complete column definition. |
---|
Builds the default value specification for the column.
protected string buildDefaultString ( ) | ||
return | string | String with default value of column. |
---|
Builds the first constraint for the column. Defaults to unsupported.
protected string buildFirstString ( ) | ||
return | string | A string containing the FIRST constraint. |
---|
Builds the length/precision part of the column.
protected string buildLengthString ( ) |
Builds the not null constraint for the column.
protected string buildNotNullString ( ) | ||
return | string | Returns 'NOT NULL' if $isNotNull is true, 'NULL' if $isNotNull is false or an empty string otherwise. |
---|
Builds the unique constraint for the column.
protected string buildUniqueString ( ) | ||
return | string | Returns string 'UNIQUE' if $isUnique is true, otherwise it returns an empty string. |
---|
Builds the unsigned string for column. Defaults to unsupported.
protected string buildUnsignedString ( ) | ||
return | string | A string containing UNSIGNED keyword. |
---|
Sets a CHECK
constraint for the column.
public $this check ( $check ) | ||
$check | string | The SQL of the |
Specifies the comment for column.
public $this comment ( $comment ) | ||
$comment | string | The comment |
Specify the default SQL expression for the column.
public $this defaultExpression ( $default ) | ||
$default | string | The default value expression. |
Specify the default value for the column.
public $this defaultValue ( $default ) | ||
$default | mixed | The default value. |
Adds an FIRST
constraint to the column.
Note: MySQL, Oracle and Cubrid support only.
public $this first ( ) |
Returns the category of the column type.
protected string getTypeCategory ( ) | ||
return | string | A string containing the column type category name. |
---|
Adds a NOT NULL
constraint to the column.
public $this notNull ( ) |
Adds a NULL
constraint to the column.
public $this null ( ) |
Adds a UNIQUE
constraint to the column.
public $this unique ( ) |
Marks column as unsigned.
public $this unsigned ( ) |