Una clase de relación con atributos en una geodatabase tiene una tabla intermedia que almacena y proporciona información adicional sobre las relaciones entre objetos relacionados.
En una clase de relación sin atributos, la relación se mantiene cuando los valores del campo clave principal de la tabla de origen se relacionan directamente con los valores del campo clave externa de la tabla de destino. No existe una tabla separada para almacenar la información de la relación. Esto se utiliza normalmente en relaciones de uno a uno y de uno a muchos en las que se puede relacionar un registro de una tabla con uno o varios registros de otra tabla, pero no al revés.
En una clase de relación con atributos, estos atributos se almacenan en una tercera tabla intermedia. Esta tabla intermedia contiene claves externas que hacen referencia a las claves principales de las tablas o clases de entidad relacionadas. La misma tabla intermedia puede tener atributos adicionales que proporcionen más información sobre la relación. Esto resulta especialmente útil en relaciones de muchos a muchos en las que se puede relacionar un registro de una tabla con varios registros de otra tabla y viceversa.
Clases de relación de muchos a muchos
La clase de relación de muchos a muchos se utiliza cuando un objeto de la tabla de origen se relaciona con múltiples objetos de destino y cuando un objeto de destino se relaciona con múltiples objetos de origen.
En comparación con otros tipos de cardinalidad, como de uno a uno o de uno a muchos, en los que la clave principal de origen se relaciona directamente con los valores de la clave externa de destino, las relaciones de muchos a muchos requieren el uso de una tabla intermedia para asignar las asociaciones. En consecuencia, al crear una relación de muchos a muchos, se crea automáticamente una tabla intermedia. En la tabla intermedia se asignan los valores de clave principal del origen a los valores de clave externa del destino. Cada fila asocia un objeto de origen a un objeto de destino.
Cuando se crea la tabla intermedia, solo se generan los campos. ArcGIS no sabe qué objetos de origen están asociados a los objetos de destino, de modo que debe crear manualmente las filas en la tabla.
Atributos de la tabla intermedia de clase de relación
La tabla intermedia de una clase de relación con atributos o de muchos a muchos puede servir opcionalmente para un segundo fin: almacenar atributos de la propia relación. Por ejemplo, en una base de datos de parcela, es posible que tenga un dataset que contenga información de parcelas relacionada con una tabla de propietarios. Un atributo de cada relación podría ser el porcentaje de propiedad. Si necesita almacenar tales atributos, puede agregarlos a la tabla intermedia al crear la clase de relación con atributos o posteriormente en cualquier momento.
Aunque no es tan útil como lo es con las relaciones de muchos a muchos, cuando configura una relación de uno a uno o de uno a muchos, puede tener la misma necesidad de almacenar atributos adicionales en una tabla intermedia. Si este es el caso, debe especificarlo activando la casilla junto a la opción La clase de relación tiene atributos en la herramienta Crear clase de relación al crear la relación para que se cree una tabla intermedia.
Como en el caso de las relaciones de muchos a muchos, la tabla intermedia de una clase de relación con atributos asigna los valores de clave principal del origen a los valores de clave externa del destino, permitiéndole almacenar cualquier número de atributos para cada relación.
Una vez que se crea una clase de relación con atributos, puede agregar la clase de relación con atributos a su mapa. La clase de relación con atributos aparecerá como una tabla que puede abrir en el panel Contenido. Además, desde la vista Campos, puede agregar y eliminar campos definidos por el usuario en esta tabla intermedia y puede rellenar y editar valores en estos campos definidos por el usuario usando el Editor de atributos.
Nota:
Esta tabla intermedia no se reconoce como clase de objeto de la geodatabase. Como resultado, los comportamientos de la geodatabase, como las reglas de atributos, los dominios, los subtipos, los valores contingentes y los valores predeterminados, no pueden aplicarse ni utilizarse con esta tabla intermedia.
Antes de empezar, consulte Preparar la creación de una clase de relación para revisar las consideraciones sobre las clases de relación de geodatabase.