14 votos

Cuando es seguro utilizar ObjectIDs como claves en una clase de relación?

Siempre he evitado el uso de ObjectIDs la hora de definir clases de relación. Es mi entendimiento de que algunas acciones en una geodatabase de re-establecer objectIDs (como la importación/exportación). Sin embargo, yo veo un montón de personas que utilizan ellos.

Solo estoy siendo paranoica, o hay casos cuando es seguro utilizar ObjectIDs la hora de definir una clase de relación?

16voto

mattruma Puntos 7742

ObjectIDs se mantiene sólo por Copiar/Pegar. Sin importar o exportar herramienta mantiene. Generalmente no se recomienda para el usuario ObjectIDs en clases de relación. Si todos los datos son verdaderamente estática debería funcionar bien, pero siempre habrá un riesgo al importar o exportar los datos.

4voto

Jake Puntos 126

Siempre que sea posible, me la base de las relaciones en otros campos de la clave. El uso de ObjectID ha presentado problemas para mí en el pasado, por las razones mencionadas por Lance. En proyectos donde los datos que se transfiere de ida y vuelta entre nuestros SDE servidor y un cliente de servidor, utilizando el id de objeto de relacionar las tablas significa tener que realizar diversas maquinaciones en las tablas para mantener relaciones.

Incluso si no es un plan para mover los datos, todavía prefieren el uso de un campo diferente para las llaves. Mi experiencia es que los clientes no suelen comprender plenamente las implicaciones de sus acciones sobre bases de datos de SIG y, a menudo, romper cosas sin darse cuenta. He tenido casos donde los clientes mover datos en formas que alteran el ObjectID. Mis proyectos suelen implicar algún código personalizado para ir junto con la base de datos y no me gusta depender de los clientes de la comprensión del sistema para prevenir fallos. Por lo tanto, prefiero mucho más el uso de otros campos de las claves principales y de las relaciones, los campos que yo pueda controlar.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X