Class yii\db\mssql\TableSchema
| Inheritance | yii\db\mssql\TableSchema » yii\db\TableSchema » yii\base\BaseObject |
|---|---|
| Implements | yii\base\Configurable |
| Available since version | 2.0 |
| Source Code | https://github.com/yiisoft/yii2/blob/master/framework/db/mssql/TableSchema.php |
TableSchema represents the metadata of a database table.
Public Properties
| Property | Type | Description | Defined By |
|---|---|---|---|
| $catalogName | string|null | Name of the catalog (database) that this table belongs to. | yii\db\mssql\TableSchema |
| $columnNames | array | List of column names. | yii\db\TableSchema |
| $columns | yii\db\ColumnSchema[] | Column metadata of this table. | yii\db\TableSchema |
| $foreignKeys | array | Foreign keys of this table. | yii\db\TableSchema |
| $fullName | string | The full name of this table, which includes the schema name prefix, if any. | yii\db\TableSchema |
| $name | string | The name of this table. | yii\db\TableSchema |
| $primaryKey | string[] | Primary keys of this table. | yii\db\TableSchema |
| $schemaName | string | The name of the schema that this table belongs to. | yii\db\TableSchema |
| $sequenceName | string|null | Sequence name for the primary key. | yii\db\TableSchema |
Public Methods
| Method | Description | Defined By |
|---|---|---|
| __call() | Calls the named method which is not a class method. | yii\base\BaseObject |
| __construct() | Constructor. | yii\base\BaseObject |
| __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 |
| __unset() | Sets an object property to null. | yii\base\BaseObject |
| 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 |
| className() | Returns the fully qualified name of this class. | yii\base\BaseObject |
| fixPrimaryKey() | Manually specifies the primary key for this table. | yii\db\TableSchema |
| getColumn() | Gets the named column metadata. | yii\db\TableSchema |
| getColumnNames() | Returns the names of all columns in this table. | yii\db\TableSchema |
| 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 |
Property Details
Name of the catalog (database) that this table belongs to. Defaults to null, meaning no catalog (or the current database).
Method Details
Defined in: yii\base\BaseObject::__call()
Calls the named method which is not a class method.
Do not call this method directly as it is a PHP magic method that will be implicitly called when an unknown method is being invoked.
| public mixed __call ( string $name, array $params ) | ||
| $name | string | The method name |
| $params | array | Method parameters |
| return | mixed | The method return value |
|---|---|---|
| throws | yii\base\UnknownMethodException | when calling unknown method |
public function __call($name, $params) { throw new UnknownMethodException('Calling unknown method: ' . get_class($this) . "::$name()"); } Defined in: yii\base\BaseObject::__construct()
Constructor.
The default implementation does two things:
- Initializes the object with the given configuration
$config. - Call init().
If this method is overridden in a child class, it is recommended that
- the last parameter of the constructor is a configuration array, like
$confighere. - call the parent implementation at the end of the constructor.
| public mixed __construct ( array $config = [] ) | ||
| $config | array | Name-value pairs that will be used to initialize the object properties |
public function __construct($config = []) { if (!empty($config)) { Yii::configure($this, $config); } $this->init(); } Defined in: yii\base\BaseObject::__get()
Returns the value of an object property.
Do not call this method directly as it is a PHP magic method that will be implicitly called when executing $value = $object->property;.
See also __set().
| public mixed __get ( string $name ) | ||
| $name | string | The property name |
| return | mixed | The property value |
|---|---|---|
| throws | yii\base\UnknownPropertyException | if the property is not defined |
| throws | yii\base\InvalidCallException | if the property is write-only |
public function __get($name) { $getter = 'get' . $name; if (method_exists($this, $getter)) { return $this->$getter(); } elseif (method_exists($this, 'set' . $name)) { throw new InvalidCallException('Getting write-only property: ' . get_class($this) . '::' . $name); } throw new UnknownPropertyException('Getting unknown property: ' . get_class($this) . '::' . $name); } Defined in: yii\base\BaseObject::__isset()
Checks if a property is set, i.e. defined and not null.
Do not call this method directly as it is a PHP magic method that will be implicitly called when executing isset($object->property).
Note that if the property is not defined, false will be returned.
| public boolean __isset ( string $name ) | ||
| $name | string | The property name or the event name |
| return | boolean | Whether the named property is set (not null). |
|---|---|---|
public function __isset($name) { $getter = 'get' . $name; if (method_exists($this, $getter)) { return $this->$getter() !== null; } return false; } Defined in: yii\base\BaseObject::__set()
Sets value of an object property.
Do not call this method directly as it is a PHP magic method that will be implicitly called when executing $object->property = $value;.
See also __get().
| public mixed __set ( string $name, mixed $value ) | ||
| $name | string | The property name or the event name |
| $value | mixed | The property value |
| throws | yii\base\UnknownPropertyException | if the property is not defined |
|---|---|---|
| throws | yii\base\InvalidCallException | if the property is read-only |
public function __set($name, $value) { $setter = 'set' . $name; if (method_exists($this, $setter)) { $this->$setter($value); } elseif (method_exists($this, 'get' . $name)) { throw new InvalidCallException('Setting read-only property: ' . get_class($this) . '::' . $name); } else { throw new UnknownPropertyException('Setting unknown property: ' . get_class($this) . '::' . $name); } } Defined in: yii\base\BaseObject::__unset()
Sets an object property to null.
Do not call this method directly as it is a PHP magic method that will be implicitly called when executing unset($object->property).
Note that if the property is not defined, this method will do nothing. If the property is read-only, it will throw an exception.
| public mixed __unset ( string $name ) | ||
| $name | string | The property name |
| throws | yii\base\InvalidCallException | if the property is read only. |
|---|---|---|
public function __unset($name) { $setter = 'set' . $name; if (method_exists($this, $setter)) { $this->$setter(null); } elseif (method_exists($this, 'get' . $name)) { throw new InvalidCallException('Unsetting read-only property: ' . get_class($this) . '::' . $name); } } Defined in: yii\base\BaseObject::canGetProperty()
Returns a value indicating whether a property can be read.
A property is readable if:
- the class has a getter method associated with the specified name (in this case, property name is case-insensitive);
- the class has a member variable with the specified name (when
$checkVarsis true);
See also canSetProperty().
| public boolean canGetProperty ( string $name, boolean $checkVars = true ) | ||
| $name | string | The property name |
| $checkVars | boolean | Whether to treat member variables as properties |
| return | boolean | Whether the property can be read |
|---|---|---|
public function canGetProperty($name, $checkVars = true) { return method_exists($this, 'get' . $name) || $checkVars && property_exists($this, $name); } Defined in: yii\base\BaseObject::canSetProperty()
Returns a value indicating whether a property can be set.
A property is writable if:
- the class has a setter method associated with the specified name (in this case, property name is case-insensitive);
- the class has a member variable with the specified name (when
$checkVarsis true);
See also canGetProperty().
| public boolean canSetProperty ( string $name, boolean $checkVars = true ) | ||
| $name | string | The property name |
| $checkVars | boolean | Whether to treat member variables as properties |
| return | boolean | Whether the property can be written |
|---|---|---|
public function canSetProperty($name, $checkVars = true) { return method_exists($this, 'set' . $name) || $checkVars && property_exists($this, $name); } ::class instead. Defined in: yii\base\BaseObject::className()
Returns the fully qualified name of this class.
| public static string className ( ) | ||
| return | string | The fully qualified name of this class. |
|---|---|---|
public static function className() { return get_called_class(); } Defined in: yii\db\TableSchema::fixPrimaryKey()
Manually specifies the primary key for this table.
| public mixed fixPrimaryKey ( string|array $keys ) | ||
| $keys | string|array | The primary key (can be composite) |
| throws | yii\base\InvalidArgumentException | if the specified key cannot be found in the table. |
|---|---|---|
public function fixPrimaryKey($keys) { $keys = (array) $keys; $this->primaryKey = $keys; foreach ($this->columns as $column) { $column->isPrimaryKey = false; } foreach ($keys as $key) { if (isset($this->columns[$key])) { $this->columns[$key]->isPrimaryKey = true; } else { throw new InvalidArgumentException("Primary key '$key' cannot be found in table '{$this->name}'."); } } } Defined in: yii\db\TableSchema::getColumn()
Gets the named column metadata.
This is a convenient method for retrieving a named column even if it does not exist.
| public yii\db\ColumnSchema|null getColumn ( string $name ) | ||
| $name | string | Column name |
| return | yii\db\ColumnSchema|null | Metadata of the named column. Null if the named column does not exist. |
|---|---|---|
public function getColumn($name) { return isset($this->columns[$name]) ? $this->columns[$name] : null; } Defined in: yii\db\TableSchema::getColumnNames()
Returns the names of all columns in this table.
| public array getColumnNames ( ) | ||
| return | array | List of column names |
|---|---|---|
public function getColumnNames() { return array_keys($this->columns); } Defined in: yii\base\BaseObject::hasMethod()
Returns a value indicating whether a method is defined.
The default implementation is a call to php function method_exists(). You may override this method when you implemented the php magic method __call().
| public boolean hasMethod ( string $name ) | ||
| $name | string | The method name |
| return | boolean | Whether the method is defined |
|---|---|---|
public function hasMethod($name) { return method_exists($this, $name); } Defined in: yii\base\BaseObject::hasProperty()
Returns a value indicating whether a property is defined.
A property is defined if:
- the class has a getter or setter method associated with the specified name (in this case, property name is case-insensitive);
- the class has a member variable with the specified name (when
$checkVarsis true);
See also:
| public boolean hasProperty ( string $name, boolean $checkVars = true ) | ||
| $name | string | The property name |
| $checkVars | boolean | Whether to treat member variables as properties |
| return | boolean | Whether the property is defined |
|---|---|---|
public function hasProperty($name, $checkVars = true) { return $this->canGetProperty($name, $checkVars) || $this->canSetProperty($name, false); } Defined in: yii\base\BaseObject::init()
Initializes the object.
This method is invoked at the end of the constructor after the object is initialized with the given configuration.
| public mixed init ( ) |
public function init() { }
Signup or Login in order to comment.