Представления в Oracle
Создание представлений может улучшить время ответов на запросы путем ограничения количество таблиц и столбцов, в которых выполняется поиск при запросе данных. Можно создать представления, которые отображаются в клиентских приложениях в качестве классов объектов или непространственных таблиц. Представление может ссылаться на отдельную таблицу или класс объектов, а также можно создать представления для объединения данных из нескольких таблиц.
Любой пользователь, имеющий необходимые разрешения, может создать представления с помощью SQL или команды sdetable. Кроме того, представления можно использовать для редактирования данных, если представление создается с возможностью редактирования. Сведения о правах доступа, необходимых для создания или изменения представлений в вашей версии, можно получить в компании Oracle.
Доступ к определениям представлений в Oracle можно получить, выполнив запрос к представлению словаря данных ALL_VIEWS.
Словарь данных Oracle сохраняет информацию о представлениях
При создании представлений в базе данных Oracle с использованием SQL или команды sdetable, представления определяются в словаре данных Oracle. Поэтому можно выполнить запрос к словарю данных Oracle для просмотра определений представлений.
Oracle предоставляет доступ пользователям к представлению ALL_VIEWS, который описывает все представления, к которым имеет доступ подключенный пользователь. Ниже приведено определение представления ALL_VIEWS.
DESCRIBE all_views;
Имя (Name) |
Null? |
Тип |
---|---|---|
OWNER |
NOT NULL |
VARCHAR2(30) |
VIEW_NAME |
NOT NULL |
VARCHAR2(30) |
TEXT_LENGTH |
NUMBER |
|
ТЕКСТ |
LONG |
|
TYPE_TEXT_LENGTH |
NUMBER |
|
TYPE_TEXT |
VARCHAR2(4000) |
|
OID_TEXT_LENGTH |
NUMBER |
|
OID_TEXT |
VARCHAR2(4000) |
|
VIEW_TYPE_OWNER |
VARCHAR2(30) |
|
VIEW_TYPE |
VARCHAR2(30) |
|
SUPERVIEW_NAME |
VARCHAR2(30) |
|
EDITIONING_VIEW* |
VARCHAR2(1) |
|
READ_ONLY* |
VARCHAR2(1) |
*Имеется только в базах данных Oracle 11g.
Представления имеют владельцев, имена и текст. Столбец TEXT в ALL_VIEWS содержит текст запроса, который определяет представление.
Помимо ограничения доступа к некоторым записям, следует также использовать представления для таблиц, содержащих несколько столбцов SDO_Geometry или ST_Geometry, чтобы можно было использовать таблицы в ArcGIS или зарегистрировать их в базе геоданных. ArcGIS не поддерживает слои с несколькими столбцами геометрии, поэтому, чтобы использовать их с ArcGIS, необходимо сначала создать представление, который будет содержать только один столбец геометрии.