Виды в SQL Server

Создание видов может улучшить время ответов на запросы путем ограничения количества строк и столбцов, в которых выполняется поиск при запросе данных. Можно создать представления, которые отображаются в клиентских приложениях в качестве классов объектов или непространственных таблиц. Вид ArcSDE может ссылаться на отдельную таблицу или класс объектов, а также можно создать виды для объединения данных из нескольких таблиц.

Любой пользователь, имеющий необходимые разрешения, может создать вид с помощью SQL. Сведения о правах доступа, необходимых для создания или изменения видов, можно получить в документации по SQL Server для вашей версии. По меньшей мере, необходимы права доступа CONNECT и CREATE VIEW на уровне базы данных, а пользователь, создающий вид, должен иметь права доступа SELECT для подчиненных таблиц.

Доступ к определениям видов можно получить через системный вид INFORMATION_SCHEMA.VIEWS в базах данных Microsoft SQL Server.

Системный вид INFORMATION_SCHEMA.VIEWS

Можно получить метаданные для вида путем выполнения запроса определенного вида в системном виде INFORMATION_SCHEMA.VIEWS.

Имя поля

Тип данных

Описание*

TABLE_CATALOG

nvarchar(128)

Квалификатор видов

TABLE_SCHEMA

nvarchar(128)

Схема, содержащая вид

TABLE_NAME

nvarchar(128)

Имя вида

VIEW_DEFINITION

nvarchar(4000)

Текст определения вида

CHECK_OPTION

nvarchar(7)

Тип WITH CHECK OPTION, с которым создавался вид (если применимо)

IS_UPDATABLE

nvarchar(2)

Указывает, может ли вид обновляться

* Полное описание полей, а также любые предостережения см. в документации Microsoft по версии используемого сервера SQL Server.

Перекрестные виды баз данных

В модели с множеством пространственных баз данных можно создавать виды между таблицами и классам объектов ArcSDE, которые размещены в разных базах данных. В этом случае следует использовать переключатель –D (база данных) для определения, в какой базе данных следует создать вид, и опцию -t для отображения всех таблиц, участвующих в виде. Имена таблиц должны быть полными, то есть включать имя базы данных и имя владельца.

ПримечаниеПримечание:

Чтобы перейти на модель одиночной пространственной базы данных, необходимо удалить эти виды. Можно повторно создать их после миграции данных.

В модели одиночной пространственной базы данных невозможно использовать команду sdetable для операции create_view, чтобы создать перекрестные виды баз данных между двумя классами объектов в разных базах данных. Для создания таких видов необходимо использовать SQL.

9/11/2013