Виды в 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.