Класс yii\db\oci\Schema
| Наследование | yii\db\oci\Schema » yii\db\Schema » yii\base\Object |
|---|---|
| Реализует | yii\base\Configurable |
| Доступна с версии | 2.0 |
| Исходный код | https://github.com/yiisoft/yii2/blob/master/framework/db/oci/Schema.php |
Класс Schema предназначен для получения метаданных из базы данных Oracle
Публичные свойства
| Свойство | Тип | Описание | Определено в |
|---|---|---|---|
| $columnSchemaClass | string | Класс схемы столбца | yii\db\Schema |
| $db | yii\db\Connection | Подключение к базе данных | yii\db\Schema |
| $defaultSchema | string | Имя схемы по умолчанию, используемое для текущей сессии. | yii\db\Schema |
| $exceptionMap | массив | Сопоставление ошибок БД и соответствующих исключений. Если левая часть найдена в сообщении об ошибке БД, используется класс исключения из правой части. | yii\db\oci\Schema |
| $lastInsertID | строка | Идентификатор последней вставленной строки или последнее значение, полученное из объекта последовательности. | yii\db\oci\Schema |
| $queryBuilder | yii\db\QueryBuilder | Строитель запросов для этого подключения. | yii\db\Schema |
| $schemaNames | строка[] | Все имена схем в базе данных, кроме системных схем. | yii\db\Schema |
| $tableNames | строка[] | Все имена таблиц в базе данных. | yii\db\Schema |
| $tableSchemas | yii\db\TableSchema[] | Метаданные для всех таблиц в базе данных. | yii\db\Schema |
| $transactionIsolationLevel | строка | Уровень изоляции транзакции для использования в этой транзакции. | yii\db\Schema |
Публичные методы
| Метод | Описание | Определён в |
|---|---|---|
| __call() | Вызывает метод, который не является методом класса. | yii\base\Object |
| __construct() | Конструктор. | yii\base\Object |
| __get() | Возвращает значение свойства объекта. | yii\base\Object |
| __isset() | Проверяет, установлено ли свойство, т.е. определено и не равно null. | yii\base\Object |
| __set() | Устанавливает значение свойства объекта. | yii\base\Object |
| __unset() | Устанавливает свойство объекта в null. | yii\base\Object |
| canGetProperty() | Возвращает значение, указывающее, может ли свойство быть прочитано. | yii\base\Object |
| canSetProperty() | Возвращает значение, указывающее, может ли свойство быть установлено. | yii\base\Object |
| className() | Возвращает полное квалифицированное имя этого класса. | yii\base\Object |
| convertException() | Преобразует исключение DB в более конкретное, если это возможно. | yii\db\Schema |
| createColumnSchemaBuilder() | Создаёт экземпляр билдера схемы столбца, задавая тип и точность значения. | yii\db\oci\Schema |
| createQueryBuilder() | Создаёт билдер запросов для базы данных. | yii\db\oci\Schema |
| createSavepoint() | Создаёт новую точку сохранения. | yii\db\Schema |
| findUniqueIndexes() | Возвращает все уникальные индексы для указанной таблицы. | yii\db\oci\Schema |
| getLastInsertID() | yii\db\oci\Schema | |
| getPdoType() | Определяет тип PDO для данного значения PHP данных. | yii\db\Schema |
| getQueryBuilder() | yii\db\Schema | |
| getRawTableName() | Возвращает фактическое имя заданного имени таблицы. | yii\db\Schema |
| getSchemaNames() | Возвращает все имена схем в базе данных, за исключением системных схем. | yii\db\Schema |
| getTableNames() | Возвращает все имена таблиц в базе данных. | yii\db\Schema |
| getTableSchema() | Получает метаданные для указанной таблицы. | yii\db\Schema |
| getTableSchemas() | Возвращает метаданные для всех таблиц в базе данных. | yii\db\Schema |
| hasMethod() | Возвращает значение, указывающее, определён ли метод. | yii\base\Object |
| hasProperty() | Возвращает значение, указывающее, определено ли свойство. | yii\base\Object |
| init() | Инициализирует объект. | yii\db\oci\Schema |
| insert() | Выполняет команду INSERT, возвращая значения первичных ключей. | yii\db\oci\Schema |
| isReadQuery() | Возвращает значение, указывающее, предназначен ли SQL-запрос для чтения. | yii\db\Schema |
| loadTableSchema() | Загружает метаданные для указанной таблицы. | yii\db\oci\Schema |
| quoteColumnName() | Приводит имя столбца в кавычки для использования в запросе. | yii\db\Schema |
| quoteSimpleColumnName() | Приводит простое имя столбца в кавычки для использования в запросе. | yii\db\Schema |
| quoteSimpleTableName() | Приводит простое имя таблицы в кавычки для использования в запросе. | yii\db\oci\Schema |
| quoteTableName() | Приводит имя таблицы в кавычки для использования в запросе. | yii\db\Schema |
| quoteValue() | Приводит строковое значение в кавычки для использования в запросе. | yii\db\Schema |
| refresh() | Обновляет схему. | yii\db\Schema |
| refreshTableSchema() | Обновляет схему конкретной таблицы. | yii\db\Schema |
| releaseSavepoint() | Освобождает существующую точку сохранения. | yii\db\oci\Schema |
| rollBackSavepoint() | Откатывает изменения до ранее созданной точки сохранения. | yii\db\Schema |
| setTransactionIsolationLevel() | Устанавливает уровень изоляции текущей транзакции. | yii\db\Schema |
| supportsSavepoint() | yii\db\Schema |
Защищённые методы
| Метод | Описание | Определён в |
|---|---|---|
| createColumn() | Создаёт экземпляр ColumnSchema. | yii\db\oci\Schema |
| createColumnSchema() | yii\db\Schema | |
| extractColumnSize() | Извлекает информацию о размере, точности и масштабе из типа DB столбца. | yii\db\oci\Schema |
| extractColumnType() | Извлекает типы данных для данного столбца. | yii\db\oci\Schema |
| findColumns() | Собрать метаданные столбцов таблицы. | yii\db\oci\Schema |
| findConstraints() | Находит ограничения и заполняет их в объект TableSchema. | yii\db\oci\Schema |
| findSchemaNames() | Возвращает все имена схем в базе данных, включая значения по умолчанию, но не системные схемы. | yii\db\oci\Schema |
| findTableNames() | Возвращает все имена таблиц в базе данных. | yii\db\oci\Schema |
| getCacheKey() | Возвращает ключ кеша для указанного имени таблицы. | yii\db\Schema |
| getCacheTag() | Возвращает имя тэга кеша. | yii\db\Schema |
| getColumnPhpType() | Извлекает тип PHP из абстрактного типа DB. | yii\db\Schema |
| getTableSequenceName() | Имя последовательности таблицы. | yii\db\oci\Schema |
| resolveTableNames() | Разрешает имя таблицы и имя схемы (если есть). | yii\db\oci\Schema |
Константы
| Константа | Значение | Описание | Определено в |
|---|---|---|---|
| TYPE_BIGINT | 'bigint' | yii\db\Schema | |
| TYPE_BIGPK | 'bigpk' | yii\db\Schema | |
| TYPE_BINARY | 'binary' | yii\db\Schema | |
| TYPE_BOOLEAN | 'boolean' | yii\db\Schema | |
| TYPE_CHAR | 'char' | yii\db\Schema | |
| TYPE_DATE | 'date' | yii\db\Schema | |
| TYPE_DATETIME | 'datetime' | yii\db\Schema | |
| TYPE_DECIMAL | 'decimal' | yii\db\Schema | |
| TYPE_DOUBLE | 'double' | yii\db\Schema | |
| TYPE_FLOAT | 'float' | yii\db\Schema | |
| TYPE_INTEGER | 'integer' | yii\db\Schema | |
| TYPE_MONEY | 'money' | yii\db\Schema | |
| TYPE_PK | 'pk' | yii\db\Schema | |
| TYPE_SMALLINT | 'smallint' | yii\db\Schema | |
| TYPE_STRING | 'string' | yii\db\Schema | |
| TYPE_TEXT | 'text' | yii\db\Schema | |
| TYPE_TIME | 'time' | yii\db\Schema | |
| TYPE_TIMESTAMP | 'timestamp' | yii\db\Schema | |
| TYPE_UBIGPK | 'ubigpk' | yii\db\Schema | |
| TYPE_UPK | 'upk' | yii\db\Schema |
Подробное описание свойств
$exceptionMap общедоступное свойство
Карта ошибок БД и соответствующих исключений. Если левая часть найдена в сообщении об ошибке БД, используется класс исключения из правой части.
public array $exceptionMap = ['ORA-00001: unique constraint' => 'yii\db\IntegrityException']
$lastInsertID общедоступное только для чтения свойство
Идентификатор строки последней вставленной строки или последнее значение, полученное из объекта последовательности
public string getLastInsertID ( $sequenceName = '' )
Подробное описание методов
createColumn() защищённый метод
Создаёт экземпляр ColumnSchema
| защищённый yii\db\ColumnSchema createColumn ( $column ) | ||
|---|---|---|
| $column | массив | |
createColumnSchemaBuilder() публичный метод
Создаёт экземпляр конструктора схемы столбца, задавая тип и точность значения.
Этот метод может быть переопределён дочерними классами для создания конструктора схемы столбца, специфичного для СУБД.
| публичный yii\db\ColumnSchemaBuilder createColumnSchemaBuilder ( $type, $length = null ) | ||
|---|---|---|
| $type | строка |
Тип столбца. См. yii\db\oci\ColumnSchemaBuilder::$type. |
| $length | целое число|строка|массив |
Длина или точность столбца. См. yii\db\oci\ColumnSchemaBuilder::$length. |
| return | yii\db\ColumnSchemaBuilder |
Экземпляр конструктора схемы столбца |
createQueryBuilder() публичный метод
Создаёт конструктор запросов для базы данных.
Этот метод может быть переопределён дочерними классами для создания конструктора запросов, специфичного для СУБД.
| публичный yii\db\QueryBuilder createQueryBuilder ( ) | ||
|---|---|---|
| return | yii\db\QueryBuilder |
Экземпляр конструктора запросов |
extractColumnSize() защищённый метод
Извлекает информацию о размере, точности и масштабе из типа DB столбца.
| защищённый void extractColumnSize ( $column, $dbType, $precision, $scale, $length ) | ||
|---|---|---|
| $column | yii\db\ColumnSchema | |
| $dbType | строка |
Тип столбца в базе данных |
| $precision | строка |
Общее количество цифр. Этот параметр доступен начиная с версии 2.0.4. |
| $scale | строка |
Количество цифр справа от десятичной точки. Этот параметр доступен начиная с версии 2.0.4. |
| $length | строка |
Длина для типов символьных данных. Этот параметр доступен начиная с версии 2.0.4. |
extractColumnType() защищённый метод
Извлекает типы данных для данного столбца
| защищённый void extractColumnType ( $column, $dbType, $precision, $scale, $length ) | ||
|---|---|---|
| $column | yii\db\ColumnSchema | |
| $dbType | строка |
Тип в базе данных |
| $precision | строка |
Общее количество цифр. Этот параметр доступен начиная с версии 2.0.4. |
| $scale | строка |
Количество цифр справа от десятичной точки. Этот параметр доступен начиная с версии 2.0.4. |
| $length | строка |
Длина для символьных типов. Этот параметр доступен начиная с версии 2.0.4. |
findColumns() защищённый метод
Сбор метаданных о столбцах таблицы.
| защищённый булево findColumns ( $table ) | ||
|---|---|---|
| $table | yii\db\TableSchema |
Схема таблицы |
| return | булево |
Существует ли таблица |
findConstraints() защищённый метод
Поиск ограничений и заполнение ими объекта TableSchema
| защищённый void findConstraints ( $table ) | ||
|---|---|---|
| $table | yii\db\TableSchema | |
findSchemaNames() защищённый метод
Возвращает все имена схем в базе данных, включая стандартную, но без системных схем.
Этот метод должен быть переопределён в дочерних классах для поддержки этой функции, так как по умолчанию он просто генерирует исключение.
| защищённый массив findSchemaNames ( ) | ||
|---|---|---|
| return | массив |
Все имена схем в базе данных, за исключением системных схем |
| throws | yii\base\NotSupportedException |
если этот метод вызывается |
findTableNames() защищённый метод
Возвращает все имена таблиц в базе данных.
Этот метод должен быть переопределён в дочерних классах для поддержки этой функции, так как по умолчанию он просто генерирует исключение.
| защищённый массив findTableNames ( $schema = '' ) | ||
|---|---|---|
| $schema | строка |
Схема таблиц. По умолчанию пустая строка, что означает текущую или стандартную схему. |
| return | массив |
Все имена таблиц в базе данных. Имена НЕ содержат префикс имени схемы. |
| throws | yii\base\NotSupportedException |
если этот метод вызывается |
findUniqueIndexes() публичный метод (доступен начиная с версии 2.0.4)
Возвращает все уникальные индексы для данной таблицы.
Каждый элемент массива имеет следующую структуру:
[
'IndexName1' => ['col1' [, ...]],
'IndexName2' => ['col2' [, ...]],
]
| публичный массив findUniqueIndexes ( $table ) | ||
|---|---|---|
| $table | yii\db\TableSchema |
Метаданные таблицы |
| return | массив |
Все уникальные индексы для данной таблицы. |
getLastInsertID() публичный метод
См. также http://www.php.net/manual/en/function.PDO-lastInsertId.php -> Oracle не поддерживает это Возвращает ID последней вставленной строки или последовательности.
| публичный строка getLastInsertID ( $sequenceName = '' ) | ||
|---|---|---|
| $sequenceName | строка |
Имя последовательности (требуется некоторыми СУБД) |
| return | строка |
ID строки последней вставленной строки или последнее значение, полученное из объекта последовательности |
| throws | yii\base\InvalidCallException |
если соединение с базой данных не активно |
getTableSequenceName() защищённый метод
Имя последовательности таблицы
| защищённый строка|null getTableSequenceName ( $tableName ) | ||
|---|---|---|
| $tableName | строка | |
| return | строка|null |
Существует ли последовательность |
init() публичный метод
Инициализирует объект.
Этот метод вызывается в конце конструктора после инициализации объекта заданной конфигурацией.
| публичный void init ( ) |
|---|
insert() публичный метод
Выполняет команду INSERT, возвращая значения первичного ключа.
| public array|false insert ( $table, $columns ) | ||
|---|---|---|
| $table | string |
Таблица, в которую будут добавлены новые строки. |
| $columns | array |
Данные столбцов (имя => значение), которые нужно вставить в таблицу. |
| return | array|false |
Значения первичного ключа или false, если команда завершилась ошибкой |
loadTableSchema() public method
Загружает метаданные для указанной таблицы.
| public null|yii\db\TableSchema loadTableSchema ( $name ) | ||
|---|---|---|
| $name | string |
Имя таблицы |
| return | null|yii\db\TableSchema |
Метаданные таблицы, зависящие от СУБД, null, если таблица не существует. |
quoteSimpleTableName() public method
Приводит простое имя таблицы в соответствие с синтаксисом запроса.
Простое имя таблицы должно содержать только имя таблицы без префикса схемы. Если имя таблицы уже приведено в соответствие с синтаксисом, этот метод ничего не сделает.
| public string quoteSimpleTableName ( $name ) | ||
|---|---|---|
| $name | string |
Имя таблицы |
| return | string |
Правильно приведенное к синтаксису имя таблицы |
releaseSavepoint() public method
Освобождает существующую точку сохранения.
| public void releaseSavepoint ( $name ) | ||
|---|---|---|
| $name | string |
Имя точки сохранения |
resolveTableNames() protected method
Разрешает имя таблицы и имя схемы (если таковое имеется).
| protected void resolveTableNames ( $table, $name ) | ||
|---|---|---|
| $table | yii\db\TableSchema |
Объект метаданных таблицы |
| $name | string |
Имя таблицы |
© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc-2.0/yii-db-oci-schema.html