ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • Справка
  • Sign Out
ArcGIS Desktop

ArcGIS Online

Картографическая платформа вашей организации

ArcGIS Desktop

Полноценная профессиональная ГИС

ArcGIS Enterprise

ГИС предприятия

ArcGIS Developers

Инструменты для встраивания приложений с местоположениями

ArcGIS Solutions

Бесплатные шаблоны карт и приложений для отрасли

ArcGIS Marketplace

Получение приложения и данных для вашей организации.

  • Документация
  • Поддержка
Esri
  • Войти
user
  • Мой профиль
  • Выход

ArcMap

  • На главную
  • Начало работы
  • Карта
  • Анализ
  • Управление данными
  • Инструменты
  • Дополнительные модули

Рабочий процесс: Создание таблиц с SQL и регистрация их в базе геоданных

Доступно с лицензией Standard или Advanced.

  • Создание непространственной таблицы с помощью SQL
  • Добавление данных в непространственную таблицу с помощью SQL
  • Создание пространственной таблицы с помощью SQL
  • Добавление данных в пространственную таблицу с помощью SQL
  • Регистрация таблиц в базе геоданных
Уровень сложности:
Средний
Требования к данным:
Используйте собственные данные
Задача:
Создавайте пространственные и непространственные таблицы с помощью SQL, а затем регистрируйте их в базе геоданных.

Для создания таблиц можно использовать SQL. Если таблица содержит пространственный столбец, таблица считается пространственной. Можно использовать SQL для заполнения непространственных и пространственных таблиц данными. Если таблица существует, можно зарегистрировать ее в базе геоданных, чтобы она могла участвовать в функциональности базы геоданных.

Это можно сделать, если вы используете пользовательское приложение для создания пространственных и непространственных таблиц, или если таблицы баз данных получены от другого агентства или подрядчика, но вы хотите использовать преимущества функциональности базы геоданных и ArcGIS.

Аналогично, можно использовать SQL, чтобы задать представления пространственных и непространственных таблиц. Если определение представления включает столбец целых чисел, содержащий уникальные значения, которые можно использовать в качестве ID объекта, представление можно зарегистрировать в базе геоданных. Регистрация представления позволяет хранить информацию о содержании представления, например, экстент и тип геометрии, и задать метаданные представления.

В этом рабочем процессе вы создадите и непространственную, и пространственную таблицы при помощи клиента SQL, добавите данные в таблицы и зарегистрируете таблицы в базе геоданных.

Создание непространственной таблицы с помощью SQL

  1. Откройте клиент SQL и войдите в базу данных в качестве пользователя с правами на создание таблиц в базе данных.
  2. Используйте выражение CREATE TABLE SQL для создания непространственной таблицы patients, которая содержит столбцы со следующими именами: PID, f_name, l_name и dwel_id.

    Oracle

    CREATE TABLE patients 
    (PID integer NOT NULL, f_name nvarchar2(25), l_name nvarchar2(38), dwel_id integer);
    

    PostgreSQL

    CREATE TABLE patients 
    (PID integer NOT NULL UNIQUE, f_name varchar(25), l_name varchar(38), dwel_id integer);
    

    Db2

    CREATE TABLE patients 
    (PID integer NOT NULL, f_name varchar(25), l_name varchar(38), dwel_id integer)
    

    Informix

    CREATE TABLE patients 
    (PID integer NOT NULL, f_name varchar(25), l_name varchar(38), dwel_id integer);
    

Добавление данных в непространственную таблицу с помощью SQL

Используйте выражения SQL INSERT для добавления записей в таблицу patients при помощи SQL.

  1. Вставьте четыре записи в таблицу patients:

    Oracle

    INSERT INTO PATIENTS (PID, f_name, l_name, dwel_id)
    VALUES (1, 'wolfgang', 'bruker', 4301);
    INSERT INTO PATIENTS (PID, f_name, l_name, dwel_id)
    VALUES (2, 'ida', 'pastens', 4301);
    INSERT INTO PATIENTS (PID, f_name, l_name, dwel_id)
    VALUES (3, 'ricardo', 'montoya', 1001);
    INSERT INTO PATIENTS (PID, f_name, l_name, dwel_id)
    VALUES (4, 'tukufu', 'endel', 9601);
    

    PostgreSQL

    INSERT INTO patients (PID, f_name, l_name, dwel_id) VALUES (1, 'wolfgang', 'bruker', 4301);
    INSERT INTO patients (PID, f_name, l_name, dwel_id) VALUES (2, 'ida', 'pastens', 4301);
    INSERT INTO patients (PID, f_name, l_name, dwel_id) VALUES (3, 'ricardo', 'montoya', 1001);
    INSERT INTO patients (PID, f_name, l_name, dwel_id)
    VALUES (4, 'tukufu', 'endel', 9601);
    

    Db2

    INSERT INTO PATIENTS (PID, f_name, l_name, dwel_id) VALUES (1, 'wolfgang', 'bruker', 4301)
    INSERT INTO PATIENTS (PID, f_name, l_name, dwel_id) VALUES (2, 'ida', 'pastens', 4301)
    INSERT INTO PATIENTS (PID, f_name, l_name, dwel_id) VALUES (3, 'ricardo', 'montoya', 1001)
    INSERT INTO PATIENTS (PID, f_name, l_name, dwel_id)
    VALUES (4, 'tukufu', 'endel', 9601)
    

    Informix

    INSERT INTO patients (PID, f_name, l_name, dwel_id) VALUES (1, 'wolfgang', 'bruker', 4301);
    INSERT INTO patients (PID, f_name, l_name, dwel_id) VALUES (2, 'ida', 'pastens', 4301);
    INSERT INTO patients (PID, f_name, l_name, dwel_id) VALUES (3, 'ricardo', 'montoya', 1001);
    INSERT INTO patients (PID, f_name, l_name, dwel_id)
    VALUES (4, 'tukufu', 'endel', 9601);
    

Создание пространственной таблицы с помощью SQL

Можно также использовать выражение CREATE TABLE для создания таблицы с пространственным столбцом.

  1. Создайте таблицу outbreaks, которая содержит целочисленный OID, целочисленный dwel_id, адрес улицы, целочисленный city_code и столбец ST_Geometry:

    Oracle

    CREATE TABLE outbreaks 
    (OID integer NOT NULL, address nvarchar2(120), city_code integer, loc sde.st_geometry);
    

    PostgreSQL

    CREATE TABLE outbreaks 
    (OID integer NOT NULL UNIQUE, address varchar(120), city_code integer, loc sde.st_geometry);
    

    Db2

    CREATE TABLE outbreaks 
    (OID integer NOT NULL, address varchar(120), city_code integer, loc db2gse.st_geometry)
    

    Informix

    CREATE TABLE outbreaks 
    (OID integer NOT NULL UNIQUE, address varchar(120), city_code integer, loc st_geometry);
    

Добавление данных в пространственную таблицу с помощью SQL

Вставьте три записи в таблицу outbreaks.

Примечание:

В этих примерах значение SRID равно 0. Задайте другое число.

  1. Используйте выражения SQL INSERT и функцию ST_Point для добавления записей в таблицу outbreaks:

    Oracle

    INSERT INTO OUTBREAKS (OID, address, city_code, loc)
    VALUES (1, 
    '1420 kirchestrasse', 
    43, 
    sde.st_geometry (0.00003, 0.00051, null, null, 4326)
    );
    INSERT INTO OUTBREAKS (OID, address, city_code, loc)
    VALUES (2, 
    '638 villa arbol', 
    10, 
    sde.st_geometry (0.00020, -0.00029, null, null, 4326)
    );
    INSERT INTO OUTBREAKS (OID, address, city_code, loc)
    VALUES (3, 
    '5579 riverview dr', 
    96, 
    sde.st_geometry (-0.00048, -0.00009, null, null, 4326)
    );
    

    PostgreSQL

    INSERT INTO outbreaks (OID, address, city_code, loc) VALUES (1, 
    '1420 kirchestrasse', 43, 
    sde.st_point (0.00003, 0.00051, null, null, 4326) );
    INSERT INTO outbreaks (OID, address, city_code, loc) VALUES (2, 
    '638 villa arbol', 10, 
    sde.st_point (0.00020, -0.00029, null, null, 4326) );
    INSERT INTO outbreaks (OID, address, city_code, loc) VALUES (3, 
    '5579 riverview dr', 96, 
    sde.st_point (-0.00048, -0.00009, null, null, 4326)
    );
    

    Db2

    INSERT INTO OUTBREAKS (OID, address, city_code, loc) VALUES (1, 
    '1420 kirchestrasse', 43, 
    db2gse.st_point (0.00003, 0.00051, null, null, 0) )
    INSERT INTO OUTBREAKS (OID, address, city_code, loc) VALUES (2, 
    '638 villa arbol', 10, 
    db2gse.st_point (0.00020, -0.00029, null, null, 0) )
    INSERT INTO OUTBREAKS (OID, address, city_code, loc) VALUES (3, 
    '5579 riverview dr', 96, 
    db2gse.st_point (-0.00048, -0.00009, null, null, 0)
    )
    

    Informix

    INSERT INTO outbreaks (OID, address, city_code, loc) VALUES (1, 
    '1420 kirchestrasse', 43, 
    st_point (0.00003, 0.00051, null, null, 0) );
    INSERT INTO outbreaks (OID, address, city_code, loc) VALUES (2, 
    '638 villa arbol', 10, 
    st_point (0.00020, -0.00029, null, null, 0) );
    INSERT INTO outbreaks (OID, address, city_code, loc) VALUES (3, 
    '5579 riverview dr', 96, 
    st_point (-0.00048, -0.00009, null, null, 0)
    );
    

Регистрация таблиц в базе геоданных

Можно зарегистрировать таблицу в базе геоданных в ArcGIS Desktop.

В следующих шагах описывается регистрация в базе геоданных в ArcGIS Desktop:

  1. Откройте инструмент геообработки Зарегистрировать в базе геоданных.

    Можно либо выполнить поиск инструмента, либо открыть его в группе инструментов Администрирование базы геоданных, набора Управление данными, либо в окне Каталога ArcMap – щелкнув правой кнопкой таблицу или представление под подключением к базе данных и выбрав Зарегистрировать в базе геоданных.

  2. Запустите клиент ArcGIS Desktop и подключитесь к многопользовательской базе геоданных, содержащей таблицу или представление, которые вы хотите зарегистрировать.

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

  3. Щелкните правой кнопкой таблицу patients и выберите Зарегистрировать в базе геоданных.
  4. Поле PID было определено как столбец целочисленных значений, отличных от NULL, поэтому оно используется как ID объекта для зарегистрированной таблицы.
  5. Щелкните правой кнопкой таблицу outbreaks и выберите Зарегистрировать в базе геоданных.
  6. Пространственная привязка была определена для вставленных полей и только один тип объекта был вставлен (points), поэтому ArcGIS обнаруживает это при регистрации использует эту информацию для определения класс объектов. Поле OID, которое было определено как столбец целочисленных значений, отличных от NULL, используется как ID объекта для зарегистрированного класса объектов.

ArcGIS Desktop

  • На главную
  • Документация
  • Поддержка

ArcGIS

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS
  • ArcGIS Developer
  • ArcGIS Solutions
  • ArcGIS Marketplace

Об Esri

  • О нас
  • Карьера
  • Блог Esri
  • Конференция пользователей
  • Саммит разработчиков
Esri
Расскажите нам, что вы думаете.
Copyright © 2021 Esri. | Конфиденциальность | Правовая информация