CDbTableSchema
| Пакет | system.db.schema |
|---|---|
| Наследование | класс CDbTableSchema » CComponent |
| Подклассы | CCubridTableSchema, CMssqlTableSchema, CMysqlTableSchema, COciTableSchema, CPgsqlTableSchema |
| С | 1.0 |
| Исходный код | framework/db/schema/CDbTableSchema.php |
Он может быть расширен разными драйверами СУБД для предоставления метаданных таблиц, специфичных для СУБД.
CDbTableSchema предоставляет следующую информацию о таблице:
Свойства публичного доступа
| Свойство | Тип | Описание | Определено |
|---|---|---|---|
| columnNames | массив | список имён столбцов | CDbTableSchema |
| columns | массив | метаданные столбцов этой таблицы. Каждый элемент массива — объект CDbColumnSchema, индексированный по именам столбцов. | CDbTableSchema |
| foreignKeys | массив | внешние ключи этой таблицы. Массив индексируется по имени столбца. Каждое значение — массив: имя таблицы с внешним ключом и имя столбца с внешним ключом. | CDbTableSchema |
| name | строка | имя этой таблицы. | CDbTableSchema |
| primaryKey | строка|массив | имя первичного ключа этой таблицы. Если составной ключ, возвращается массив имён ключей. | CDbTableSchema |
| rawName | строка | исходное имя этой таблицы. Это строковое представление имени таблицы с необязательным именем схемы. Его можно использовать непосредственно в SQL-запросах. | CDbTableSchema |
| sequenceName | строка | имя последовательности для первичного ключа. Null, если последовательность отсутствует. | CDbTableSchema |
Методы публичного доступа
| Метод | Описание | Определено |
|---|---|---|
| __call() | Вызывает метод, который не является методом класса. | CComponent |
| __get() | Возвращает значение свойства, список обработчиков событий или поведение на основе его имени. | CComponent |
| __isset() | Проверяет, является ли значение свойства null. | CComponent |
| __set() | Устанавливает значение свойства компонента. | CComponent |
| __unset() | Устанавливает свойство компонента в null. | CComponent |
| asa() | Возвращает объект поведения по имени. | CComponent |
| attachBehavior() | Присоединяет поведение к компоненту. | CComponent |
| attachBehaviors() | Присоединяет список поведений к компоненту. | CComponent |
| attachEventHandler() | Присоединяет обработчик событий к событию. | CComponent |
| canGetProperty() | Определяет, можно ли прочитать свойство. | CComponent |
| canSetProperty() | Определяет, можно ли установить свойство. | CComponent |
| detachBehavior() | Отсоединяет поведение от компонента. | CComponent |
| detachBehaviors() | Отсоединяет все поведения от компонента. | CComponent |
| detachEventHandler() | Отсоединяет существующий обработчик событий. | CComponent |
| disableBehavior() | Отключает присоединенное поведение. | CComponent |
| disableBehaviors() | Отключает все присоединённые к этому компоненту поведения. | CComponent |
| enableBehavior() | Включает присоединенное поведение. | CComponent |
| enableBehaviors() | Включает все присоединённые к этому компоненту поведения. | CComponent |
| evaluateExpression() | Вычисляет PHP-выражение или обратный вызов в контексте этого компонента. | CComponent |
| getColumn() | Получает метаданные столбца по имени. | CDbTableSchema |
| getColumnNames() | Возвращает список имён столбцов | CDbTableSchema |
| getEventHandlers() | Возвращает список присоединённых обработчиков событий для события. | CComponent |
| hasEvent() | Определяет, определено ли событие. | CComponent |
| hasEventHandler() | Проверяет, есть ли присоединённые обработчики для указанного события. | CComponent |
| hasProperty() | Определяет, определено ли свойство. | CComponent |
| raiseEvent() | Возбуждает событие. | CComponent |
Подробное описание свойств
columnNames свойство только для чтения
public array getColumnNames()
список имён столбцов
columns свойство
public array $columns;
метаданные столбцов этой таблицы. Каждый элемент массива — объект CDbColumnSchema, индексированный по имени столбца.
foreignKeys свойство
public array $foreignKeys;
внешние ключи этой таблицы. Массив индексируется по имени столбца. Каждое значение — массив: имя таблицы с внешним ключом и имя столбца с внешним ключом.
name свойство
public string $name;
имя этой таблицы.
primaryKey свойство
public string|array $primaryKey;
имя первичного ключа этой таблицы. Если составной ключ, возвращается массив имён ключей.
rawName свойство
public string $rawName;
исходное имя этой таблицы. Это строковое представление имени таблицы с необязательным именем схемы. Его можно использовать непосредственно в SQL-запросах.
sequenceName свойство
public string $sequenceName;
имя последовательности для первичного ключа. Null, если последовательность отсутствует.
Подробное описание методов
getColumn() метод
public CDbColumnSchema getColumn(string $name) | ||
| $name | строка | имя столбца |
| {return} | CDbColumnSchema | метаданные указанного столбца. Null, если столбец с указанным именем не существует. |
public function getColumn($name)
{
return isset($this->columns[$name]) ? $this->columns[$name] : null;
}
Получает метаданные указанного столбца. Это удобный метод для получения метаданных столбца, даже если он не существует.
getColumnNames() метод
public array getColumnNames() | ||
| {return} | массив | список имён столбцов |
public function getColumnNames()
{
return array_keys($this->columns);
}
© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc/api/1.1/CDbTableSchema