Class yii\db\TableSchema

继承yii\db\TableSchema » yii\base\BaseObject
实现yii\base\Configurable
子类yii\db\mssql\TableSchema
可用自版本2.0
源代码 https://github.com/yiisoft/yii2/blob/master/framework/db/TableSchema.php

TableSchema 表示数据库表的元数据.

公共属性

隐藏继承的属性

属性类型描述定义在
$columnNames array 列名称的列表. 该属性是只读的. yii\db\TableSchema
$columns yii\db\ColumnSchema[] 该表的列元数据. yii\db\TableSchema
$foreignKeys array 该表的外键. yii\db\TableSchema
$fullName string 该表的全名, 其中包括模式名称前缀(如果有). yii\db\TableSchema
$name string 该表的名称. yii\db\TableSchema
$primaryKey string[] 该表的主键. yii\db\TableSchema
$schemaName string 该表所属的模式的名称. yii\db\TableSchema
$sequenceName string 主键的序列名称. yii\db\TableSchema

公共方法

隐藏继承的方法

方法描述定义在
__call() 调用不是类方法的已命名方法. yii\base\BaseObject
__construct() 构造函数. yii\base\BaseObject
__get() 返回对象属性的值. yii\base\BaseObject
__isset() 检查属性是否已设置, 即已定义且不为null. yii\base\BaseObject
__set() 设置对象属性的值. yii\base\BaseObject
__unset() 将对象属性设置为null. yii\base\BaseObject
canGetProperty() 返回一个值, 指示属性是否可读. yii\base\BaseObject
canSetProperty() 返回一个值, 指示属性是否可写. yii\base\BaseObject
className() 返回此类的完全限定名称. yii\base\BaseObject
fixPrimaryKey() 手动指定该表的主键. yii\db\TableSchema
getColumn() 获取指定列的元数据. yii\db\TableSchema
getColumnNames() 返回该表中所有列的名称. yii\db\TableSchema
hasMethod() 返回一个值, 指示方法是否已定义. yii\base\BaseObject
hasProperty() 返回一个值, 指示属性是否已定义. yii\base\BaseObject
init() 初始化对象. yii\base\BaseObject

属性详情

$columnNames public 属性

列名称的列表. 该属性是只读的.

public array $columnNames null
$columns public 属性

该表的列元数据. 每个数组元素都是一个 yii\db\ColumnSchema 对象, 该对象按列名进行索引.

$foreignKeys public 属性

该表的外键. 每个数组元素具有以下结构:

[
 'ForeignTableName',
 'fk1' => 'pk1',  // pk1 在外表中
 'fk2' => 'pk2',  // 如果是复合外键
]
public array $foreignKeys = []
$fullName public 属性

该表的全名, 其中包括模式名称前缀(如果有).

Note: 如果模式名称与 默认模式名称 相同, 则将不包含模式名称.

public string $fullName null
$name public 属性

该表的名称. 不包括模式名称. 使用 $fullName 获取带有模式名称前缀的名称.

public string $name null
$primaryKey public 属性

该表的主键.

public string[] $primaryKey = []
$schemaName public 属性

该表所属的模式的名称.

public string $schemaName null
$sequenceName public 属性

主键的序列名称. 如果没有序列, 则为null.

public string $sequenceName null

方法详情

fixPrimaryKey() public 方法

手动指定该表的主键.

public void fixPrimaryKey ( $keys )
$keys string|array

主键(可以是复合键).

throws yii\base\InvalidArgumentException

如果在表中找不到指定的键.

getColumn() public 方法

获取指定列的元数据.

这是检索指定列(即使它不存在)的便捷方法.

public yii\db\ColumnSchema getColumn ( $name )
$name string

列名称.

return yii\db\ColumnSchema

指定列的元数据. 如果指定的列不存在, 则为null.

getColumnNames() public 方法

返回该表中所有列的名称.

public array getColumnNames ( )
return array

列名称列表.