Registrar con geodatabase (Administración de datos)

Resumen

Registra con la geodatabase las clases de entidad, tablas, vistas y capas ráster creadas en la base de datos con herramientas de terceros o vistas creadas con la herramienta Crear vista de base de datos. Una vez registrados, la información sobre los elementos (por ejemplo, nombres de tablas y columnas, extensión espacial y tipo de geometría) se almacena en las tablas de sistema de la geodatabase, lo que permite que los elementos registrados puedan participar en la funcionalidad de la geodatabase.

Uso

  • Utilice esta herramienta para registrar con la geodatabase las clases de entidad, tablas, vistas y capas ráster creadas en la base de datos con herramientas de terceros o SQL. Las vistas que cree utilizando la herramienta de geoprocesamiento Crear vista de base de datos también se pueden registrar con la geodatabase.

  • Las vistas que cree en geodatabases de archivos utilizando la herramienta Crear vista de base de datos también se pueden registrar con la geodatabase de archivos.

  • Para registrar con una geodatabase corporativa, debe estar conectado como el propietario del dataset de entrada.

  • Antes de que una clase de entidad, tabla o capa ráster pueda participar completamente en la funcionalidad de la geodatabase, debe registrarse con la geodatabase. Si no está registrada con la geodatabase, solo dispondrá de una funcionalidad limitada en clientes y servicios de ArcGIS.

  • Las vistas de que están registradas con la geodatabase no pueden participar en algunos comportamientos de la geodatabase y son de solo lectura mediante clientes de ArcGIS. Las vistas no se admiten en servicios de entidades.

Sintaxis

arcpy.management.RegisterWithGeodatabase(in_dataset, {in_object_id_field}, {in_shape_field}, {in_geometry_type}, {in_spatial_reference}, {in_extent})
ParámetroExplicaciónTipo de datos
in_dataset

La clase de entidad, tabla, vista o ráster creados mediante herramientas de terceros, SQL o la vista creada con la herramienta Crear vista de base de datos que se registrarán con la geodatabase. El dataset debe estar en la misma base de datos que la geodatabase.

Table View; Raster Layer
in_object_id_field
(Opcional)

El campo que se utilizará como campo ObjectID. Esta entrada es necesaria al registrar una vista y debe proporcionar un campo de enteros existente. Este parámetro es opcional al registrar otros tipos de dataset; si utiliza un campo existente, este debe ser un tipo de datos enteros. Si no se proporciona ningún campo existente al registrar estos otros tipos de datasets, se creará un campo ObjectID y se rellenará.

Field
in_shape_field
(Opcional)

Si el dataset de entrada contiene una columna de forma, incluya este campo durante el proceso de registro.

Field
in_geometry_type
(Opcional)

Especifica el tipo de geometría. Si el valor del parámetro in_shape_field está presente, debe especificar un tipo de geometría. Si el dataset que se está registrando contiene entidades existentes, el tipo de geometría especificado debe coincidir con el tipo de entidad de estas entidades.

  • POINTEl tipo de geometría es punto.
  • MULTIPOINTEl tipo de geometría es multipunto.
  • POLYGONEl tipo de geometría es polígono.
  • POLYLINEEl tipo de geometría es polilínea.
String
in_spatial_reference
(Opcional)

Si el valor del parámetro in_shape_field está presente y la tabla está vacía, especifique el sistema de coordenadas que se debe utilizar para las entidades. Si el dataset que se está registrando contiene entidades existentes, el sistema de coordenadas especificado debe coincidir con el sistema de coordenadas de las entidades existentes. Los valores válidos son un objeto de Spatial Reference, un archivo con extensión .prj o una representación de una cadena de caracteres de un sistema de coordenadas.

Spatial Reference
in_extent
(Opcional)

Si el valor del parámetro in_shape_field está presente, especifique el rango de coordenadas permitido para las coordenadas x,y en el siguiente orden: "XMin YMin XMax YMax". Si el dataset que se está registrando contiene entidades existentes, se utilizará la extensión de las entidades existentes.

Envelope

Salida derivada

NombreExplicaciónTipo de datos
reg_dataset

El dataset registrado.

Tabla

Muestra de código

Ejemplo 1 de RegisterWithGeodatabase (ventana de Python)

En la siguiente secuencia de comandos de la ventana de Python se muestra cómo utilizar la función RegisterWithGeodatabase en la ventana de Python para una tabla espacial que contiene entidades de geometría de puntos. Puesto que la tabla subyacente contiene entidades existentes, es posible encontrar la información de la extensión de la entidad y de la referencia de coordenadas, y no es necesario mencionarlas específicamente.

import arcpy
arcpy.env.workspace = r"Database Connections/connection.sde"
arcpy.RegisterWithGeodatabase_management("database.owner.COUNTIES", "OID", 
                                         "Shape", "POINT")
Ejemplo 2 de RegisterWithGeodatabase (script independiente)

La siguiente secuencia de comandos independiente es un simple ejemplo de cómo aplicar la función RegisterWithGeodatabase en secuencias de comandos.

# 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)
Ejemplo 3 de RegisterWithGeodatabase (script independiente)

Registrar una vista llamada 'trees' en una geodatabase de archivos.

# 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")

Información de licenciamiento

  • Basic: No
  • Standard: Sí
  • Advanced: Sí

Temas relacionados