Копирование и вставка данных между базами данных в ArcGIS

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

В ArcGIS Pro можно копировать таблицы, классы пространственных объектов и представления (далее именуемые таблицами) из реляционной базы данных или базы геоданных и вставлять их в другую реляционную базу данных или базу геоданных.

Когда вы копируете таблицы из одного места и вставляете их в другое, типы данных, используемые для атрибутов в таблицах, могут измениться. Например, если вы копируете таблицу из Microsoft SQL Server с полем UniqueIdentifier, то при ее вставке в базу данных PostgreSQL это поле в созданной в PostgreSQL таблице станет типа Varchar.

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

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

  • Типы данных, поддерживаемые в ArcGIS

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

  • Одна пространственная привязка

    Если исходная таблица имеет пространственную привязку, которая распознается ArcGIS, такая же пространственная привязка будет использована для таблицы в целевом местоположении. Если в таблице не задана пространственная привязка, ArcGIS будет использовать пространственную привязку первой строки таблицы. Объекты, которые не используют эту пространственную привязку, не будут включены в целевую таблицу. Если пространственная привязка исходной таблицы не может быть идентифицирована (например, если используется пользовательская пространственная привязка), пространственная привязка, используемая в целевой таблице, варьируется в зависимости от целевой системы управления базами данных.

    Если целевое местоположение не поддерживает пространственную привязку, заданную в исходной таблице, операция вставки завершается ошибкой.

  • Один пространственный столбец

    Если таблица содержит более одного пространственного столбца, ArcGIS использует первый найденный пространственный столбец; никакие дополнительные пространственные столбцы в целевой таблице создаваться не будут.

  • Один тип геометрии

    ArcGIS считывает тип геометрии (точки, линии, полигоны или мультиточки) первого объекта исходной таблицы. Только те объекты, тип геометрии которых соответствует типу геометрии, заданному в первой строке, будут вставлены в целевую таблицу.

  • Одна настройка координат

    ArcGIS считывает свойства координат (xy, xyz, xym, xyzm), хранящихся с первым объектом исходной таблицы. Все объекты в таблице, созданной в целевом местоположении, будут иметь свойства координат, которые заданы для первого объекта в исходной таблице. Например, если первый объект в исходной таблице имеет координаты x, y и z, но не m, любые объекты, у которых была информация о координатах m в исходной таблице, не будут содержать ее в целевой таблице. Аналогично, любой объект, который имеет только координаты x,y в исходной таблице, будет содержать координаты x,y и z в целевой таблице. Значение координаты z будет равно 0.

    Если целевое местоположение не поддерживает параметры координат, операция вставки завершается неудачей. Например, если первый объект в исходной таблице хранит координаты x, y, z и m, но целевое местоположение не поддерживает координаты z и m, вы не сможете вставить данные в целевое местоположение.

Если исходная таблица не соответствует этим требованиям, вы можете подготовить данные перед их копированием, как описано в следующей таблице:

Исходная таблица содержитКонтроль используемого в целевой

Неподдерживаемые типы данных.

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

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

Несколько пространственных столбцов

Определите представление или слой запроса в исходной таблице, который содержит только нужные вам в целевой таблице столбцы. Используйте только один пространственный столбец.

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

Если вы задаете слоя запроса в исходной таблице, экспортируйте данные из слоя запроса, чтобы создать таблицу в целевой базе данных или корпоративной базе геоданных.

Несколько типов геометрии

Создайте слой запроса исходной таблицы и задайте тип геометрии для него (точки, мультиточки, линий или полигоны). Экспортируйте данные из слоя запроса в целевую базу данных или корпоративную базу геоданных. Таблица, созданная в целевом местоположении, будет содержать только те объекты, геометрия которых совпадает с типом геометрии, заданным в слое запроса.

Несколько настроек координат

Чтобы убедиться в том, что вся информация о координатах сохраняется в целевой таблице, создайте в слой запроса исходной таблицы и задайте его пространственные свойства, чтобы включить m- и z-значения. Затем экспортируйте данные из слоя запроса в таблицу целевой базы данных или корпоративной базы геоданных. Все объекты таблицы, созданной в целевой базе данных или в корпоративной базе геоданных, будут использовать настройки координат, заданные для слоя запроса.

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

В следующих шагах описывается, как использовать функции меню копирования и вставки в ArcGIS Pro, чтобы скопировать таблицу, класс пространственных объектов или представление из одной реляционной базы данных или многопользовательской базы геоданных и вставить их в другую базу данных или многопользовательскую базу геоданных:

  1. Подключитесь к исходной и целевой базам данных.
  2. Нужно подключиться к источнику данных как пользователь с правами доступа к данным в ней, и подключиться к целевой базе как пользователь с правами создания таблиц.
  3. Если необходимо, подготовьте данные для перемещения, в соответствии с требованиями ArcGIS.
  4. Щелкните правой кнопкой мыши на таблице, классе пространственных объектов или представлении в подключении к исходной базе данных и выберите Копировать.
  5. Щелкните правой кнопкой мыши подключение к целевой базе данных на панели Каталог и выберите Вставить.

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

    Когда вы вставляете представление, оно создает таблицу или класс пространственных объектов в целевой базе данных или базе геоданных.

    Примечание:

    Для того чтобы вставить данные в базу данных PostgreSQL или SQL Server, пользователю, подключенному к целевой базе данных, должна принадлежать схема с тем же именем, как и у пользователя базы данных. В SQL Server это должна быть схема пользователя по умолчанию.

Таблица или класс пространственных объектов со всеми их ресурсами создается в целевой реляционной базе данных или многопользовательской базе геоданных.