Sugerencias sobre cómo registrar tablas existentes con una columna ST_Geometry

Utilizar tablas ST_Geometry existentes

ArcSDE puede utilizar correctamente las tablas que contienen columnas ST_Geometry creadas con SQL (algunas veces denominadas tablas de terceros) siempre que las tablas cumplan con los siguientes requisitos previos:

Realizar registros de tablas de terceros que contienen columnas ST_Geometry

El comando de administración sdelayer –o register de ArcSDE registra una tabla espacial como clase de entidad. Para registrar tablas que contienen una columna ST_Geometry, se deben cumplir los requisitos previos descritos en la sección anterior.

Las tablas que registra pueden estar vacías o ya pueden contener datos.

Registrar tablas que ya contienen datos

Cuando registra una tabla que ya contiene datos, los datos tienen un sistema de referencia espacial asignado a la tabla. Eso significa que cuando registra la tabla con ArcSDE, no tiene que especificar el ID de referencia espacial (SRID) con la opción –R. ArcSDE verifica el SRID definido del primer registro en la tabla y lo utiliza.

Sin embargo, tenga en cuenta que el SRID debe existir en la tabla ST_SPATIAL_REFERENCES para que sea aceptado. Si el sistema de referencia espacial que necesita aún no está en la tabla ST_SPATIAL_REFERENCES, el modo que se recomienda para obtenerlo es iniciar ArcCatalog, conectarse a la geodatabase, y después crear una nueva clase de entidad que utilice el sistema de referencia espacial que desea y el almacenamiento ST_Geometry. Al hacer esto, la tabla ST_SPATIAL_REFERENCES se completa con el SRID que necesita, y ArcCatalog calcula las unidades y los desplazamientos x,y,z y m, y la extensión de capa. También es posible utilizar SQL para insertar la referencia espacial, pero al hacerlo, debe asegurarse de calcular las unidades y los desplazamientos x,y, z- y m correctos usted mismo.

En el siguiente ejemplo, se registra una tabla, TOWERS, que contiene registros de geometrías de punto (–e p) en una columna espacial, SHAPE. Dado que la referencia espacial ya se conoce, no es necesario especificarla al registrar la tabla con sdelayer. Al utilizar la opción –C, una columna única que no sea NULL, FID, se agrega a la tabla que se utilizará como una columna ID de fila.

sdelayer –o register –l towers,shape –e p –C fid,SDE –u brooke –p pwd19

Para las tablas que contienen una gran cantidad de registros, el proceso de registro puede llevar menos tiempo si registra la columna ID de fila como mantenida por usuario.

sdelayer –o register –l towers,shape –e p –C fid,USER –u brooke –p pwd19

Sin embargo, si registra la columna de identificador de entidades como mantenida por usuario y después registra la clase de entidad con la geodatabase, ArcGIS agrega una columna de identificador de entidades adicional, object_ID. ArcGIS mantiene los valores de esta columna. Si la tabla contiene una gran cantidad de registros, agregar esta columna adicional object_ID puede llevar un tiempo.

Registrar tablas espaciales que no contienen datos

Si la tabla no contiene datos y no tiene un SRID asignado, debe especificar un SRID cuando se registra la tabla. Esto se realiza con la opción –R. El SRID especificado ya debe estar presente en la tabla SPATIAL_REFERENCES en la geodatabase y corresponder al SRID definido por ArcSDE.

Como se menciona en la sección anterior, para completar la tabla SPATIAL_REFERENCES con el sistema de referencia espacial que desea utilizar, inicie ArcCatalog, conéctese a la geodatabase y después cree una nueva clase de entidad que utilice el sistema de referencia espacial que desea y el almacenamiento ST_Geometry. A continuación, consulte el sistema SPATIAL_REFERENCES para conocer el SRID asignado al sistema de referencia espacial que especificó para la clase de entidad. Utilice este SRID durante el registro de la tabla espacial.

En el siguiente ejemplo, se registra una tabla vacía, DRAINAGE, con ArcSDE. La tabla ya contiene una columna única de enteros que no es NULL, ID, que se utilizará para la columna ID de fila. El SRID se especifica con la opción –R.

sdelayer –o register –l drainage,line –e l+ –C id,SDE –R 6 –u hortence –p topsecret

Si la tabla no contiene datos o no tiene ningún SRID asignado, y usted no especifica uno cuando se registra la tabla con ArcSDE, se asigna el valor de SRID predeterminado de 0. Este SRID existe para fines de muestra y documentación solamente, y no se recomienda su uso con datos de producción. Las especificaciones para este SRID son las siguientes:

FalseX

- 400

FalseY

- 400

XYUnits

1000000000

FalseZ

- 100000

ZUnits

10000

FalseM

- 100000

MUnits

10000

XYCluster_Tol

0.000000008983153

ZCluster_Tol

.001

MCluster_Tol

.001

Proyección

GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]], PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]]

Auth_srid

4326

Auth_name

EPSG

Definición de SRID predeterminado

Para obtener más información sobre el uso del comando sdelayer, consulte la Referencia de comandos de administración de ArcSDE suministrada con el componente ArcSDE de ArcGIS Server en el nivel Enterprise.

El comando sdelayer sólo agrega la tabla a las tablas del sistema de ArcSDE. Para poder utilizar la funcionalidad de geodatabase de ArcGIS Desktop, como topología, versionado y redes, también debe registrar la tabla con la geodatabase. Consulte Registrar una tabla con la geodatabase para obtener más información.


7/10/2012