Создание слоя запроса

Воспользуйтесь кнопкой Добавить данные Добавить данные на вкладке Карта, чтобы создать на карте слой запроса.

Подсказка:

При перетаскивании класса объектов базы данных, таблицы или вида на карту из подключения базы данных на панели Каталог ArcGIS Pro автоматически создает слой запроса, выбирающий все строки и поля этого класса объектов, таблицы или вида. Это относится только к базам данных и не относится к многопользовательским базам геоданных.

ArcGIS Pro вычисляет содержание данного слоя при добавлении его на карту перетаскиванием. Однако если добавляемая таблица содержит большое количество объектов, вычисление содержания может затянуться. Если вы знаете экстент данных или хотите использовать экстент пространственной привязки, вы можете использовать их вместо того, чтобы ждать вычисление экстента. Для этого нажмите соответствующую кнопку в диалоговом окне Вычисление экстента. Нажав на кнопку Ввод экстента, необходимо ввести корректные значения; экстент должен включать в себя все объекты таблицы.

Альтернативные способы определения экстента

Ниже приводится краткая информация о том, как создать слой запроса в диалоговом окне Новый слой запроса:

  1. Подключаться к базе данных.

    Первый шаг при создании слоя запроса в ArcGIS – создание подключения к базе данных, к которой будет выполняться запрос. Вы можете создать подключение базы данных на панели Каталог, как это описано в разделе Подключение баз данных в ArcGIS Pro, либо создать подключение в диалоговом окне Новый слой запроса.

  2. Выберите таблицу.

    После того как подключение будет установлено, в диалоговом окне Новый слой запроса появится список таблиц и представлений. При выборе таблицы отобразятся ее столбцы.

    Каждый столбец в базе геоданных имеет определенный тип данных. ArcGIS может работать с большинством обычных типов в базе данных. Однако некоторые типы не поддерживаются. Если тип столбца атрибутов – Unknown, это означает, что ArcGIS не поддерживает этот тип данных. Когда вы зададите запрос, все столбцы с неизвестным типом данных должны быть либо исключены, либо в запросе следует изменить их тип, на тот, который поддерживается ArcGIS.

    Подробнее см. в разделе Типы данных СУБД, поддерживаемые в ArcGIS.

  3. Постройте SQL-запрос.

    Внесите уточнения в SQL запрос в текстовом окне Запрос.

    При построении запроса в текстовое поле Запрос можно добавить всю таблицу, дважды щелкнув ее или перетащив ее из окна Список таблиц в тестовое поле Запрос. Точно так же можно добавить определенные столбцы таблицы - или дважды щелкнуть на них, или перетащить из окна Столбцы в текстовое окно Запрос . Запрос можно также напечатать или скопировать и вставить из внешнего приложения в окно Запрос.

    При построении слоя запроса следует использовать SQL-синтаксис, специфичный для базы данных. Обычное выражение может быть таким: SELECT * FROM Test.myuser.US_States. Результатом будет слой запроса, содержащий все строки из таблицы US_States. Это приведет к отображению всех Соединенных Штатов на карте.

    Чтобы понять, как использовать переменные в запросах SQL, см. раздел Задание параметров в слое запроса.

  4. Проверьте SQL-выражение.

    После того как выражение создано, его необходимо проверить. В процессе проверки ArcGIS проводит определение свойств слоя запроса, основываясь на возвращенные данные первой строки в таблице.

    В процессе проверки ArcGIS проводит определение свойств слоя запроса, основываясь на возвращенные данные первой строки в таблице.

    Свойства слоя запроса используются для фильтрации строк базы данных при чтении их ArcGIS. Например если у объектов вашего класса различные идентификаторы SRID, свойство SRID, установленное в слое запроса, будет использоваться в качестве барьера, чтобы строки таблицы из базы данных c несовпадающим SRID, не отображались на карте.

  5. Задайте уникальный идентификатор или используйте идентификатор, найденный ArcGIS во время проверки.

    Уникальный идентификатор - это одно или несколько полей, используемых ArcGIS для идентификации каждой строки в таблице.

  6. Для классов пространственных объектов или представлений, которые содержат пространственный столбец, вы можете задать следующее или использовать значения по умолчанию, обнаруженные ArcGIS при проверке:
    • Тип геометрии – свойство определяет тип слоя: точечный, мультиточечный, линейный или полигональный.
    • Пространственная привязка – система координат и другие относящиеся к слою пространственные свойства.

      Бывает, что ArcGIS не может точно определить пространственную привязку, основываясь на текущем значении SRID, заданном для таких объектов в базе данных. В этом случае у слоя запроса может оказаться неизвестная пространственная привязку, и вы должны определить ее вручную. Важно, что в этом случае определение пространственной привязки слоя запроса не перепроецирует данные; просто указывается, какая пространственная привязка будет применена при отображении результатов запроса на карте в ArcGIS.

    • SRID – идентификатор пространственной привязки, который используется для возвращения по запросу только объектов геометрии, имеющих ту же пространственную привязку. Значение SRID может быть пустым, если в слое запроса нет пространственного поля. Если это значение задано, все пространственные объекты, у которых нет указанного значения SRID геометрии, будут исключены из результирующего набора.

Выполните приведенные ниже действия для создания слоя запроса на карте.

  1. Слои запроса могут быть добавлены на карту при щелчке на кнопку Добавить данные Добавить данные на ленте Карта и выборе кнопки Слой запроса из ниспадающего списка Добавить слой запроса. Откроется окно слоя запроса.
  2. В диалоговом окне Новый слой запроса укажите имя в текстовом поле Имя для создаваемого слоя запроса. Это имя, которое будет отображаться на панели Содержание.
  3. Когда появится окно нового слоя запроса, вы должны выбрать подключение базы данных, в которой хранятся ваши данные. Если подключение уже существует в проекте, выберите его из ниспадающего списка. Если соединение не существует в проекте, нажмите кнопку создания нового подключения к базе данных Новое подключение к базе геоданных и создайте подключение.
  4. Введите SQL-запрос в текстовом поле Запрос.

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

    При построении запроса в текстовое поле Запрос можно добавить всю таблицу, дважды щелкнув ее или перетащив ее из окна Список таблиц в тестовое поле Запрос.

    При выборе таблицы отобразятся ее столбцы. Можно добавить в запрос определенные столбцы таблицы - или дважды щелкнуть на них, или перетащить из окна Столбцы в текстовое окно Запрос.

  5. Выберите, хотите ли вы задать пространственные свойства для слоя, или воспользоваться опцией по умолчанию, чтобы позволить ArcGIS Pro сделать это за вас.

    В процессе проверки ArcGIS задает свойства слоя запроса: размерность, тип геометрии, пространственную привязку, SRID и уникальный идентификатор. Эти значения основаны на первой строке, возвращенной по запросу. Если вы хотите задать эти свойства вручную, выберите опцию Определить пространственные свойства слоя.

  6. После того как выражение создано, его необходимо проверить. Нажмите Проверить, чтобы убедиться, что синтаксис запроса корректен, и он возвращает данные, которые можно использовать в ArcGIS. Процесс проверки выполняет запрос в базе данных и проверяет, встречаются ли в результирующем запросе стандарты моделирования данных, приемлемые в ArcGIS. Слой запроса не добавляется на карту, пока он не проверен.

    Правила проверки следующие:

    • Результирующий набор должен иметь не больше одного пространственного поля.
    • Результирующий набор должен иметь не более одной пространственной привязки.
    • Результирующий набор должен иметь только один тип геометрии.
    • В результирующем наборе не должно быть каких-либо типов полей, не поддерживаемых в ArcGIS.

    Если проверка не пройдена по любой причине, появится сообщение об ошибке, чтобы вы могли изменить запрос.

    Проверка особенно важна при работе с пространственными базами данных, которые не поддерживают те же стандарты, что и ArcGIS.

  7. После того как запрос будет проверен успешно, щелкните Далее.

    Подключитесь к базе данных и задайте запрос SQL для нового слоя запросов.

  8. Выберите поле уникального идентификатора для слоя запроса.

    Для всех объектов карты необходим уникальный идентификатор. Поэтому ваш слой запроса должен содержать поле уникального идентификатора, содержащее значение для каждого объекта. Подробнее о выборе поля уникального идентификатора для слоя запроса.

  9. Определите пространственные свойства слоя запроса, выбрав тип геометрии и пространственную привязку. Это параметры уже будут заданы, если вы решите разрешить ArcGIS Pro задавать для вас пространственные свойства.
    1. Выберите из ниспадающего меню тип геометрии.
    2. Щелкните Система координат, чтобы выбрать систему координат, которая будет использоваться для пространственной привязки, или импортируйте пространственную привязку из существующего набора данных.

    Задайте уникальный идентификатор и пространственные свойства для слоя запроса.

  10. Если вы решите задать пространственные свойства слоя на шаге 5, вам нужно выбрать одно из Свойств экстента слоя. Вы можете ввести экстент, использовать экстент карты или экстент пространственной привязки. Если вы вводите экстент, он должен быть действительным и включать все элементы в таблице. Нажмите кнопку Далее, чтобы указать значения экстента или просмотреть значения экстента карты или пространственной привязки, если вы не указали свои значения.
  11. Щелкните Готово, чтобы добавить на карту слой запроса.

Для получения информации об изменении свойств слоя запроса обратитесь к разделу Изменение слоя запроса.

Связанные разделы