Зарегистрировать в базе геоданных (Управление данными)

Краткая информация

Регистрирует классы объектов, таблицы, представления и растровые слои в базе геоданных. Регистрация используется для данных, созданных в базе данных с помощью сторонних инструментов, использующих SQL, или в ArcGIS AllSource с помощью инструментов, которые не выполняют регистрацию в базе геоданных (Создать незарегистрированный класс объектов, Создать незарегистрированную таблицу и Создать представление базы данных).

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

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

Использование

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

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

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

Параметры

ПодписьОписаниеТип данных
Входные наборы данных

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

Table View; Raster Layer
Поле Object ID
(Дополнительный)

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

Примечание:

При регистрации представления требуется существующее целочисленное поле.

Field
Поле Shape
(Дополнительный)

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

Field
Тип геометрии
(Дополнительный)

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

  • ТочкаТипом геометрии будут точки.
  • МультиточкаТипом геометрии будут мультиточки.
  • ПолигонТипом геометрии будет полигон.
  • ПолилинияТипом геометрии будет полилиния.
  • МультипатчТипом геометрии будет мультипатч.
String
Система координат
(Дополнительный)

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

Spatial Reference
Задание экстента
(Дополнительный)

Если присутствует значение параметра Поле Shape, укажите допустимый диапазон значений для координат x,y. Если регистрируемый набор данных содержит существующие объекты, будет использован экстент существующих объектов.

Envelope

Производные выходные данные

ПодписьОписаниеТип данных
Зарегистрированный набор данных

Зарегистрированный набор данных.

Table

arcpy.management.RegisterWithGeodatabase(in_dataset, {in_object_id_field}, {in_shape_field}, {in_geometry_type}, {in_spatial_reference}, {in_extent})
ИмяОписаниеТип данных
in_dataset

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

Table View; Raster Layer
in_object_id_field
(Дополнительный)

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

Примечание:

При регистрации представления требуется существующее целочисленное поле.

Field
in_shape_field
(Дополнительный)

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

Field
in_geometry_type
(Дополнительный)

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

  • POINTТипом геометрии будут точки.
  • MULTIPOINTТипом геометрии будут мультиточки.
  • POLYGONТипом геометрии будет полигон.
  • POLYLINEТипом геометрии будет полилиния.
  • MULTIPATCHТипом геометрии будет мультипатч.
String
in_spatial_reference
(Дополнительный)

Если присутствует значение параметра in_shape_field и таблица пустая, укажите систему координат для ее использования пространственными объектами. Если регистрируемый набор данных содержит существующие объекты, указанная система координат должна соответствовать системе координат существующих пространственных объектов. Корректными значениями являются: Объект Spatial Reference, файл с расширением .prj и строковое представление системы координат.

Spatial Reference
in_extent
(Дополнительный)

Если присутствует значение параметра in_shape_field, укажите допустимый диапазон значений для координат x,y в следующем порядке: "XMin YMin XMax YMax". Если регистрируемый набор данных содержит существующие объекты, будет использован экстент существующих объектов.

Envelope

Производные выходные данные

ИмяОписаниеТип данных
reg_dataset

Зарегистрированный набор данных.

Table

Пример кода

RegisterWithGeodatabase, пример 1 (окно Python)

Следующий скрипт в окне Python показывает, как использовать функцию RegisterWithGeodatabase в окне Python для пространственной таблицы, содержащей точечные геометрические объекты. Так как основополагающая таблица содержит информацию о существующих пространственных объектах, пространственной привязке и экстенте объектов, её всегда можно посмотреть и не обязательно предоставлять в явном виде.

import arcpy
arcpy.env.workspace = r"Database Connections/connection.sde"
arcpy.management.RegisterWithGeodatabase("database.owner.COUNTIES", "OID", 
                                         "Shape", "POINT")
RegisterWithGeodatabase, пример 2 (автономный скрипт)

Следующий автономный скрипт показывает простой пример применения функции RegisterWithGeodatabase.

# RegisterWithGeodatabase.py
# Description: Simple example showing use of RegisterWithGeodatabase tool
 
# Import system modules
import arcpy

# Set variables
inTable = r"c:\connectionFiles\Connection to esriServer.sde\database.dbo.cities"
oid_field = "OID"
shape_field = "Shape"
geometry_type = "POINT"
sr = arcpy.SpatialReference(4326)
in_extent = "11 10 14 34"

# Process: Register With Geodatabase
arcpy.management.RegisterWithGeodatabase(inTable, oid_field, shape_field, 
                                         geometry_type, sr, in_extent)
RegisterWithGeodatabase, пример 3 (автономный скрипт)

Регистрирование представления названием trees в файловой базе геоданных.

# RegisterWithGeodatabase.py
# Description: Example showing use of RegisterWithGeodatabase tool with a file 
#              gdb view.

# Import system modules
import arcpy

# Create a view in the geodatabase
arcpy.management.CreateDatabaseView("C:\\testdata\\mytest.gdb",
                                    "trees",
                                    "select objectid, owner, parcel from inventory where type = trees")

# Set variables
inTable = r"C:\\testdata\\mytest.gdb\\trees"

# Process: Register With Geodatabase
arcpy.management.RegisterWithGeodatabase(inTable, "objectid")

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