Копирование и вставка данных между базами данных в 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, чтобы скопировать таблицу, класс пространственных объектов или представление из одной реляционной базы данных или многопользовательской базы геоданных и вставить их в другую базу данных или многопользовательскую базу геоданных:
- Подключитесь к исходной и целевой базам данных.
Нужно подключиться к источнику данных как пользователь с правами доступа к данным в ней, и подключиться к целевой базе как пользователь с правами создания таблиц.
Если необходимо, подготовьте данные для перемещения, как описано выше, чтобы они соответствовали требованиям ArcGIS.
Щелкните правой кнопкой мыши на таблице, классе пространственных объектов или представлении в подключении к исходной базе данных и выберите Копировать.
Щелкните правой кнопкой мыши подключение к целевой базе данных на панели Каталог и выберите Вставить.
Владельцем данных в целевой базе данных является пользователь, имя которого указано в файле подключения к ней.
Когда вы вставляете представление, оно создает таблицу или класс пространственных объектов в целевой базе данных или базе геоданных.
Примечание:
Для того чтобы вставить данные в базу данных PostgreSQL и SQL Server, пользователь, подключенный к целевой базе данных, должен быть владельцем схемы с именем, совпадающем с именем пользователя базы данных. В SQL Server это должна быть схема пользователя по умолчанию.
Таблица или класс пространственных объектов со всеми их ресурсами создается в целевой реляционной базе данных или многопользовательской базе геоданных.