Class yii\db\pgsql\Schema
| Наследование | yii\db\pgsql\Schema » yii\db\Schema » yii\base\Object |
|---|---|
| Реализует | yii\base\Configurable |
| Использует Трейты | yii\db\ViewFinderTrait |
| Доступен с версии | 2.0 |
| Исходный код | https://github.com/yiisoft/yii2/blob/master/framework/db/pgsql/Schema.php |
Schema — класс для получения метаданных из базы данных PostgreSQL (версии 9.x и выше).
Публичные свойства
| Свойство | Тип | Описание | Определено в |
|---|---|---|---|
| $columnSchemaClass | строка | Класс схемы столбца | yii\db\Schema |
| $db | yii\db\Connection | Подключение к базе данных | yii\db\Schema |
| $defaultSchema | строка | Схема по умолчанию, используемая для текущей сессии. | yii\db\pgsql\Schema |
| $exceptionMap | массив | Сопоставление ошибок БД и соответствующих исключений. Если левая часть найдена в сообщении об ошибке БД, используется класс исключения из правой части. | yii\db\Schema |
| $lastInsertID | строка | Идентификатор последней вставленной строки или последнее значение, полученное из объекта последовательности. | yii\db\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 |
| $typeMap | массив | Сопоставление физических типов столбцов (ключи) с абстрактными типами столбцов (значения) | yii\db\pgsql\Schema |
| $viewNames | строка[] | Все имена представлений в базе данных. | yii\db\ViewFinderTrait |
Публичные методы
| Метод | Описание | Определено в |
|---|---|---|
| __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() | Преобразует исключение базы данных в более конкретное, если это возможно. | yii\db\Schema |
| createColumnSchemaBuilder() | Создает экземпляр билдера схемы столбца, задавая тип и точность значения. | yii\db\Schema |
| createQueryBuilder() | Создает билдер запросов для базы данных PostgreSQL. | yii\db\pgsql\Schema |
| createSavepoint() | Создает новую точку сохранения. | yii\db\Schema |
| findUniqueIndexes() | Возвращает все уникальные индексы для заданной таблицы. | yii\db\pgsql\Schema |
| getLastInsertID() | Возвращает ID последней вставленной строки или последовательности значений. | yii\db\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 |
| getViewNames() | Возвращает все имена представлений в базе данных. | yii\db\ViewFinderTrait |
| hasMethod() | Возвращает значение, указывающее, определен ли метод. | yii\base\Object |
| hasProperty() | Возвращает значение, указывающее, определено ли свойство. | yii\base\Object |
| init() | Инициализирует объект. | yii\base\Object |
| insert() | Выполняет команду INSERT, возвращая значения первичного ключа. | yii\db\pgsql\Schema |
| isReadQuery() | Возвращает значение, указывающее, предназначен ли SQL-запрос для чтения. | yii\db\Schema |
| loadTableSchema() | Загружает метаданные для указанной таблицы. | yii\db\pgsql\Schema |
| quoteColumnName() | Приводит имя столбца в кавычки для использования в запросе. | yii\db\Schema |
| quoteSimpleColumnName() | Приводит простое имя столбца в кавычки для использования в запросе. | yii\db\Schema |
| quoteSimpleTableName() | Приводит имя таблицы в кавычки для использования в запросе. | yii\db\pgsql\Schema |
| quoteTableName() | Приводит имя таблицы в кавычки для использования в запросе. | yii\db\Schema |
| quoteValue() | Приводит строковое значение в кавычки для использования в запросе. | yii\db\Schema |
| refresh() | Обновляет схему. | yii\db\Schema |
| refreshTableSchema() | Обновляет схему конкретной таблицы. | yii\db\Schema |
| releaseSavepoint() | Освобождает существующую точку сохранения. | yii\db\Schema |
| rollBackSavepoint() | Откатывает к ранее созданной точке сохранения. | yii\db\Schema |
| setTransactionIsolationLevel() | Устанавливает уровень изоляции текущей транзакции. | yii\db\Schema |
| supportsSavepoint() | yii\db\Schema |
Защищенные методы
| Метод | Описание | Определено в |
|---|---|---|
| createColumnSchema() | yii\db\Schema | |
| findColumns() | Собирает метаданные столбцов таблицы. | yii\db\pgsql\Schema |
| findConstraints() | Собирает детали столбцов внешнего ключа для заданной таблицы. | yii\db\pgsql\Schema |
| findSchemaNames() | Возвращает все имена схем в базе данных, включая стандартную, но не системные схемы. | yii\db\pgsql\Schema |
| findTableNames() | Возвращает все имена таблиц в базе данных. | yii\db\pgsql\Schema |
| findViewNames() | yii\db\pgsql\Schema | |
| getCacheKey() | Возвращает ключ кеша для указанного имени таблицы. | yii\db\Schema |
| getCacheTag() | Возвращает имя тега кеша. | yii\db\Schema |
| getColumnPhpType() | Извлекает тип PHP из абстрактного типа БД. | yii\db\Schema |
| getUniqueIndexInformation() | Получает информацию об уникальных индексах заданной таблицы. | yii\db\pgsql\Schema |
| loadColumnSchema() | Загружает информацию о столбцах в объект yii\db\ColumnSchema. | yii\db\pgsql\Schema |
| resolveTableNames() | Разрешает имя таблицы и имя схемы (если таковое имеется). | yii\db\pgsql\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 |
Подробное описание свойств
$defaultSchema публичное свойство
Схема по умолчанию, используемая для текущей сессии.
public string $defaultSchema = 'public'
$typeMap публичное свойство
Сопоставление физических типов столбцов (ключи) с абстрактными типами столбцов (значения)
См. также http://www.postgresql.org/docs/current/static/datatype.html#DATATYPE-TABLE.
public array $typeMap = ['bit' => self::TYPE_INTEGER, 'bit varying' => self::TYPE_INTEGER, 'varbit' => self::TYPE_INTEGER, 'bool' => self::TYPE_BOOLEAN, 'boolean' => self::TYPE_BOOLEAN, 'box' => self::TYPE_STRING, 'circle' => self::TYPE_STRING, 'point' => self::TYPE_STRING, 'line' => self::TYPE_STRING, 'lseg' => self::TYPE_STRING, 'polygon' => self::TYPE_STRING, 'path' => self::TYPE_STRING, 'character' => self::TYPE_CHAR, 'char' => self::TYPE_CHAR, 'bpchar' => self::TYPE_CHAR, 'character varying' => self::TYPE_STRING, 'varchar' => self::TYPE_STRING, 'text' => self::TYPE_TEXT, 'bytea' => self::TYPE_BINARY, 'cidr' => self::TYPE_STRING, 'inet' => self::TYPE_STRING, 'macaddr' => self::TYPE_STRING, 'real' => self::TYPE_FLOAT, 'float4' => self::TYPE_FLOAT, 'double precision' => self::TYPE_DOUBLE, 'float8' => self::TYPE_DOUBLE, 'decimal' => self::TYPE_DECIMAL, 'numeric' => self::TYPE_DECIMAL, 'money' => self::TYPE_MONEY, 'smallint' => self::TYPE_SMALLINT, 'int2' => self::TYPE_SMALLINT, 'int4' => self::TYPE_INTEGER, 'int' => self::TYPE_INTEGER, 'integer' => self::TYPE_INTEGER, 'bigint' => self::TYPE_BIGINT, 'int8' => self::TYPE_BIGINT, 'oid' => self::TYPE_BIGINT, 'smallserial' => self::TYPE_SMALLINT, 'serial2' => self::TYPE_SMALLINT, 'serial4' => self::TYPE_INTEGER, 'serial' => self::TYPE_INTEGER, 'bigserial' => self::TYPE_BIGINT, 'serial8' => self::TYPE_BIGINT, 'pg_lsn' => self::TYPE_BIGINT, 'date' => self::TYPE_DATE, 'interval' => self::TYPE_STRING, 'time without time zone' => self::TYPE_TIME, 'time' => self::TYPE_TIME, 'time with time zone' => self::TYPE_TIME, 'timetz' => self::TYPE_TIME, 'timestamp without time zone' => self::TYPE_TIMESTAMP, 'timestamp' => self::TYPE_TIMESTAMP, 'timestamp with time zone' => self::TYPE_TIMESTAMP, 'timestamptz' => self::TYPE_TIMESTAMP, 'abstime' => self::TYPE_TIMESTAMP, 'tsquery' => self::TYPE_STRING, 'tsvector' => self::TYPE_STRING, 'txid_snapshot' => self::TYPE_STRING, 'unknown' => self::TYPE_STRING, 'uuid' => self::TYPE_STRING, 'json' => self::TYPE_STRING, 'jsonb' => self::TYPE_STRING, 'xml' => self::TYPE_STRING]
Подробное описание методов
createQueryBuilder() public method
Создаёт билдер запросов для базы данных PostgreSQL.
| public yii\db\pgsql\QueryBuilder createQueryBuilder ( ) | ||
|---|---|---|
| return | yii\db\pgsql\QueryBuilder |
Экземпляр билдера запросов |
findColumns() protected method
Сбор метаданных о столбцах таблицы.
| protected boolean findColumns ( $table ) | ||
|---|---|---|
| $table | yii\db\TableSchema |
Метаданные таблицы |
| return | boolean |
Существует ли таблица в базе данных |
findConstraints() protected method
Сбор подробностей о внешних ключах для данной таблицы.
| protected void findConstraints ( $table ) | ||
|---|---|---|
| $table | yii\db\TableSchema |
Метаданные таблицы |
findSchemaNames() protected method (доступно начиная с версии 2.0.4)
Возвращает все имена схем в базе данных, включая стандартную, но исключая системные.
Этот метод должен быть переопределён дочерними классами для поддержки этой функции, так как по умолчанию он просто генерирует исключение.
| protected array findSchemaNames ( ) | ||
|---|---|---|
| return | array |
Все имена схем в базе данных, за исключением системных |
findTableNames() protected method
Возвращает все имена таблиц в базе данных.
| protected array findTableNames ( $schema = '' ) | ||
|---|---|---|
| $schema | string |
Схема таблиц. По умолчанию пустая строка, что означает текущую или стандартную схему. |
| return | array |
Все имена таблиц в базе данных. Имена НЕ содержат префикс имени схемы. |
findUniqueIndexes() public method
Возвращает все уникальные индексы для данной таблицы.
Каждый элемент массива имеет следующий формат:
[
'IndexName1' => ['col1' [, ...]],
'IndexName2' => ['col2' [, ...]],
]
| public array findUniqueIndexes ( $table ) | ||
|---|---|---|
| $table | yii\db\TableSchema |
Метаданные таблицы |
| return | array |
Все уникальные индексы для данной таблицы. |
findViewNames() protected method
| protected void findViewNames ( $schema = '' ) | ||
|---|---|---|
| $schema | ||
getUniqueIndexInformation() protected method
Получает информацию об уникальных индексах данной таблицы.
| protected array getUniqueIndexInformation ( $table ) | ||
|---|---|---|
| $table | yii\db\TableSchema |
Метаданные таблицы |
| return | array |
С именами индексов и столбцов |
insert() public method
Выполняет команду INSERT, возвращая значения первичного ключа.
| public array|false insert ( $table, $columns ) | ||
|---|---|---|
| $table | string |
Таблица, в которую будут вставлены новые строки. |
| $columns | array |
Данные столбцов (имя => значение) для вставки в таблицу. |
| return | array|false |
Значения первичного ключа или false, если команда завершилась неудачно |
loadColumnSchema() protected method
Загрузка информации о столбцах в объект yii\db\ColumnSchema.
| protected yii\db\ColumnSchema loadColumnSchema ( $info ) | ||
|---|---|---|
| $info | array |
Информация о столбце |
| return | yii\db\ColumnSchema |
Объект схемы столбца |
loadTableSchema() public method
Загрузка метаданных для указанной таблицы.
| public yii\db\TableSchema|null loadTableSchema ( $name ) | ||
|---|---|---|
| $name | string |
Имя таблицы |
| return | yii\db\TableSchema|null |
Метаданные таблицы, зависящие от драйвера. Null, если таблица не существует. |
quoteSimpleTableName() public method
Приводит имя таблицы в соответствие для использования в запросе.
Простое имя таблицы не имеет префикса схемы.
| public string quoteSimpleTableName ( $name ) | ||
|---|---|---|
| $name | string |
Имя таблицы |
| return | 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-pgsql-schema.html