Сводка
Регистрирует в базе геоданных классы пространственных объектов, таблицы, представления и растровые слои, созданные в базе данных с помощью сторонних инструментов или представлений, созданных инструментом Создать представление базы данных. После регистрации информация об этих элементах – названия таблиц и столбцов, пространственный экстент и тип геометрии – хранится в системных таблицах баз геоданных, позволяя зарегистрированным элементам участвовать в функциональных возможностях базы геоданных.
Использование
Используйте этот инструмент для регистрации в базе геоданных классов пространственных объектов, представлений, таблиц и растровых слоёв, которые вы создали в базе данных при помощи сторонних инструментов или SQL. Представления, созданные с помощью инструмента геообработки Создать представление базы данных, также могут быть зарегистрированы в базе геоданных.
Представления, которые создаются в файловой базе данных с помощью инструмента геообработки Создать представление базы данных, также могут быть зарегистрированы в базе геоданных.
Для регистрации в многопользовательской базе геоданных необходимо подключиться в качестве владельца входного набора данных.
Прежде чем класс пространственных объектов, таблица или растровый слой сможет в полной мере участвовать во всех функциях базы геоданных, он должен быть зарегистрирован в базе геоданных. Если он не зарегистрирован в базе геоданных, будут доступны только некоторые функции клиентов и сервисов ArcGIS.
Представления, зарегистрированные в базе геоданных, не могут участвовать в некотором поведении базы геоданных, и доступны только для чтения для клиентов ArcGIS. Представления не поддерживаются в сервисах объектов.
Синтаксис
arcpy.management.RegisterWithGeodatabase(in_dataset, {in_object_id_field}, {in_shape_field}, {in_geometry_type}, {in_spatial_reference}, {in_extent})
Parameter | Объяснение | Тип данных |
in_dataset | Класс пространственных объектов, таблица, представление или растр, созданные при помощи сторонних инструментов, SQL или инструмента Создать представление базы данных, которые будут зарегистрированы в базе геоданных. Набор данных должен находиться в той же базе данных, что и база геоданных. | Table View; Raster Layer |
in_object_id_field (Дополнительный) | Это поле будет использоваться как поле ObjectID. Эти входные данные обязательны при регистрации представления и должны предоставлять существующее целочисленное поле. Этот параметр не обязателен при регистрации других типов наборов данных; при использовании существующего поля оно должно быть целочисленным. Если существующее поле не указано при регистрации этих других типов набора данных, то будет создано и заполнено поле ObjectID. | Field |
in_shape_field (Дополнительный) | Если входной набор данных содержит поле shape, включите его в процессе регистрации. | Field |
in_geometry_type (Дополнительный) | Задает тип геометрии. Если присутствует значение параметра in_shape_field, вы должны указать тип геометрии. Если регистрируемый набор данных содержит существующие объекты, указанный тип геометрии должен соответствовать сущности этих пространственных объектов.
| String |
in_spatial_reference (Дополнительный) | Если присутствует значение параметра in_shape_field и таблица пустая, укажите систему координат для ее использования пространственными объектами. Если регистрируемый набор данных содержит существующие объекты, указанная система координат должна соответствовать системе координат существующих пространственных объектов. Корректными значениями являются: Объект Spatial Reference, файл с расширением .prj и строковое представление системы координат. | Spatial Reference |
in_extent (Дополнительный) | Если присутствует значение параметра in_shape_field, укажите допустимый диапазон значений для координат X,Y в следующем порядке: "XMin YMin XMax YMax". Если регистрируемый набор данных содержит существующие объекты, будет использован экстент существующих объектов. | Envelope |
Производные выходные данные
Name | Объяснение | Тип данных |
reg_dataset | Зарегистрированный набор данных. | Таблица |
Пример кода
Следующий скрипт в окне Python показывает, как использовать функцию RegisterWithGeodatabase в окне Python для пространственной таблицы, содержащей точечные геометрические объекты. Так как основополагающая таблица содержит информацию о существующих пространственных объектах, пространственной привязке и экстенте объектов, её всегда можно посмотреть и не обязательно предоставлять в явном виде.
import arcpy
arcpy.env.workspace = r"Database Connections/connection.sde"
arcpy.RegisterWithGeodatabase_management("database.owner.COUNTIES", "OID",
"Shape", "POINT")
Следующий автономный скрипт показывает простой пример применения функции 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.RegisterWithGeodatabase_management(inTable, oid_field, shape_field,
geometry_type, sr, in_extent)
Регистрирование представления названием 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.CreateDatabaseView_management("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.RegisterWithGeodatabase_management(inTable, "objectid")
Environments
Информация о лицензиях
- Basic: Нет
- Standard: Да
- Advanced: Да