Представления в базе геоданных
Представления базы данных представляют собой сохраненные запросы, содержащие выбранные данные из таблиц, которые вы указали в определении представления. Представления могут включать отдельные таблицы, несколько таблиц и вспомогательные запросы.
В многопользовательских и мобильных базах геоданных представления существуют как объекты в базе данных. В многопользовательских базах геоданных пользователям требуются определенные права доступа базы данных, чтобы иметь возможность создавать представления. Изучите документацию для системы управления базами данных, чтобы понять, поддерживаются или нет представления в базе данных этого типа.
Инструмент геообработки Создать представление базы данных можно использовать для определения представления в многопользовательской базе геоданных, файловой базе геоданных или мобильной базе геоданных. В качестве альтернативы для многопользовательских баз геоданных можно использовать собственный SQL системы управления базой данных для создания представлений.
Примечание:
Представления автоматически не регистрируются в базе геоданных, даже если представление задано для таблиц или классов объектов, и даже если оно создано с использованием инструмента геообработки Создать представление базы данных. Представление не будет зарегистрировано в базе геоданных, пока вы его принудительно не зарегистрируете.
Зачем использовать представления?
Ниже приведены некоторые причины, почему следует использовать представления баз геоданных:
Представления могут предоставлять поднаборы строк или столбцов предварительно определенным способом. Это снижает объем данных, передаваемый от базы данных клиенту, что может повысить производительность.
Для многопользовательских баз геоданных ограничение наличия строк или столбцов в представлении также дает вам возможность определять, какие данные видят пользователи. Например, сотрудникам, занимающимся оценкой запасов и заказом товаров, нет необходимости видеть имена людей, которые сделали заказ, или цену товаров. Вместо того чтобы предоставлять сотрудникам доступ ко всей таблице с информацией, вы можете создать представление, не включающее эти столбцы, и предоставить сотрудникам, которые занимаются оценкой право доступа
selectдля этого представления.Ограничение строк и столбцов также позволит соответствовать требованиям ArcGIS к данным. Например, ArcGIS может работать только с таблицами, которые содержат один пространственный столбец. Для работы с пространственными таблицами, которые содержат несколько пространственных столбцов, можно создавать представления. Каждое представление может содержать один пространственный столбец. ArcGIS может работать только с таблицами, которые используют одну пространственную привязку. Если таблица содержит данные, которые хранятся в нескольких разных пространственных привязках, вы можете создать представление, включающее только строки (объекты) с одинаковой пространственной привязкой.
Представления позволяют закодировать распространенные запросы в базе данных и сделать их доступными нескольким пользователям. Это снижает потребность пользователей в создании собственных сложных запросов.
Представления могут объединять данные из различных таблиц или других представлений.
Можно использовать функции агрегирования для сведения данных в представлениях. Это также снижает объем данных, передаваемый от базы данных клиенту, что может повысить производительность.
Вы можете объединить класс объектов и не пространственную таблицу при определении пространственного представления, используя таким образом столбцы обоих источников.
Рекомендации по использованию представлений
На что следует обратить внимание при работе с представлениями в ArcGIS:
Вы не можете редактировать данные в представлениях через клиенты или сервисы ArcGIS, даже если вы зарегистрировали представления в базе геоданных.
Изменения, внесенные в схему базовой таблицы или таблиц, не отражаются в представлении. Чтобы включить дополнительные столбцы в представлении, необходимо повторно определить представление для включения этих столбцов.
Внимание:
Если вы заменяете представления, созданные с помощью ArcGIS, изменяя существующие представления с помощью SQL или других инструментов базы данных, вы отвечаете не только за корректность и эффективность запросов, но и за их актуальность и возможность использования с клиентами ArcGIS. Например, построение представлений "один ко многим" с использованием классов объектов приводит к дублированию столбцов ObjectID. Это приводит к непредсказуемому поведению таких приложений, как ArcGIS Pro, и веб-сервисов, так как для них необходимо, чтобы столбец ObjectID содержал уникальные значения.
В большинстве случаев таблицы и классы объектов многопользовательских баз геоданных, которые вы включаете в представление, не регистрируются как традиционные версионные или доступные для архивирования. При создании представления таблицы многопользовательской базы геоданных или класса объектов, который используется в традиционной версии, можно видеть только данные в базовой таблице, но не изменения в архивных таблицах. Чтобы посмотреть изменения через клиентов ArcGIS, необходимо согласовать и отправить правки в версию Default и выполнить сжатие базы геоданных.
В видах нельзя работать с вложениями. Доступ к вложениям должен осуществляться из таблицы, в которую они были добавлены.
Если вы включаете пространственный столбец в определение представления, используемого в ArcGIS, необходимо учесть следующие требования.
В представлении должен быть представлен один пространственный столбец.
Определение представления должно включать столбец Object ID, принадлежащий к тому же классу объектов, что и пространственный столбец. Если ObjectID из класса объектов не включен, то уникальная связь между строкой ID или столбцом ObjectID и определяющим столбцом может быть нарушена, что приведет к ошибочным результатам при запросе или отображении данных в ArcGIS.
Представления, зарегистрированные с базой геоданных
После создания представления в базе геоданных, вы можете запустить инструмент геообработки Зарегистрировать в базе геоданных, чтобы создать объект базы геоданных для представления.
Вот несколько причин, по которым стоит зарегистрировать представление с базой геоданных:
При регистрации представления с базой геоданных информация о представлении хранится в системных таблицах базы геоданных. Эта информация, в частности тип геометрии, пространственная привязка и экстент влияют на увеличение производительности при добавлении представления с пространственным компонентом на карту.
Можно заполнить метаданные для представлений, которые зарегистрированы с базой геоданных, если вы являетесь владельцем этих представлений.