ArcGIS Desktop

  • Документация
  • Поддержка

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

ArcGIS Online

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

ArcGIS Desktop

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

ArcGIS Enterprise

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

ArcGIS for Developers

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

ArcGIS Solutions

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

ArcGIS Marketplace

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

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

Справка

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

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

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

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

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

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

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

  1. Откройте клиент SQL и войдите в базу данных в качестве пользователя с правами на создание таблиц в базе данных.
  2. Используйте выражение SQL CREATE TABLE для создания непространственной таблицы 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 nvarchar2(120), city_code integer, loc 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, 
    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)
    );
    

    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 for Desktop можно использовать, чтобы зарегистрировать таблицу в базе геоданных.

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

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

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

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

ArcGIS Desktop

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

ArcGIS Platform

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

Об Esri

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