Une classe de relations attribuées dans une géodatabase comporte une table intermédiaire qui stocke et fournit des informations supplémentaires sur les relations entre les objets associés.
Dans une classe de relations non attribuées, la relation est conservée lorsque les valeurs du champ de clé primaire de la table d’origine sont directement liées aux valeurs du champ de clé étrangère de la table de destination. Aucune table distincte ne stocke les informations de relation. Cela est généralement utilisé dans les relations un vers un et un vers plusieurs où un enregistrement d’une table peut être associé à un ou plusieurs enregistrements d’une autre table, mais pas l’inverse.
Dans une classe de relations attribuées, ces attributs sont stockés dans une troisième table intermédiaire. Cette table intermédiaire contient les clés étrangères faisant référence aux clés primaires des tables ou classes d’entités associées. La table intermédiaire même peut comporter des attributs supplémentaires qui fournissent de plus amples informations sur la relation. Cela est particulièrement utile dans les relations plusieurs vers plusieurs où un enregistrement d’une table peut être associé à plusieurs enregistrements d’une autre table, et inversement.
Classes de relations plusieurs vers plusieurs
Une classe de relations plusieurs vers plusieurs est utilisée lorsqu’un objet de la table d’origine est associé à plusieurs objets de destination et lorsqu’un objet de destination est associé à plusieurs objets d’origine.
Par rapport aux autres types de cardinalité, tels que un vers un ou un vers plusieurs, où la clé primaire d’origine est directement associée aux valeurs de la clé étrangère de destination, les relations plusieurs vers plusieurs nécessitent l’utilisation d’une table intermédiaire pour apparier les associations. Par conséquent, lorsque vous créez une relation de type plusieurs vers plusieurs, une table intermédiaire est automatiquement créée. La table intermédiaire apparie les valeurs de clé primaire de l'origine aux valeurs de clé étrangère de la destination. Chaque ligne associe un objet d'origine à un objet de destination.
Seuls ces champs sont générés lors de la création de la table intermédiaire. ArcGIS ne sait pas à quels objets de destination les objets d’origine sont associés, et les lignes doivent donc être créées manuellement dans la table.
Attributs de la table intermédiaire de la classe de relations
La table intermédiaire d'une classe de relations attribuées ou de type plusieurs vers plusieurs peut également jouer un second rôle : elle peut stocker les attributs de la relation même. Par exemple, une base de données de parcelles peut contenir un jeu de données comportant des informations de parcelle associées à une table de propriétaires. Un attribut de chaque relation peut représenter les parts de copropriété. Si vous devez stocker ces attributs, vous pouvez les ajouter dans la table intermédiaire lorsque vous créez la classe de relations attribuées ou ultérieurement.
Même si cela n’est pas aussi utile qu’avec les relations plusieurs vers plusieurs, lorsque vous configurez une relation un vers un ou un vers plusieurs, vous pouvez également avoir besoin de stocker des attributs supplémentaires dans une table intermédiaire. Dans ce cas, vous devez le spécifier en cochant la case en regard de l’option Relationship class is attributed (Classe de relations attribuées) sur l’outil Créer une classe de relations lorsque vous créez la relation afin qu’une table intermédiaire soit créée pour vous.
Comme avec les relations plusieurs vers plusieurs, la table intermédiaire d’une classe de relations attribuées apparie les valeurs de clé primaire de l’origine aux valeurs de clé étrangère de la destination, ce qui vous permet de stocker n’importe quel nombre d’attributs pour chaque relation.
Une fois qu’une classe de relations attribuées est créée, vous pouvez l’ajouter dans votre carte. La classe de relations attribuées apparaît sous forme de table que vous pouvez ouvrir dans la fenêtre Contents (Contenu). Dans la vue Champs, vous pouvez également ajouter et supprimer les champs définis par l’utilisateur dans cette table intermédiaire et vous pouvez renseigner et mettre à jour les valeurs dans ces champs définis par l’utilisateur à l’aide de l’éditeur d’attributs.
Remarque :
Cette table intermédiaire n’est pas reconnue comme une classe d’objets dans la géodatabase. Par conséquent, les comportements de géodatabase comme les règles attributaires, les domaines, les sous-types, les valeurs conditionnelles et les valeurs par défaut ne peuvent pas être appliqués ni utilisés avec cette table intermédiaire.
Avant de démarrer, reportez-vous à la rubrique Se préparer à la création d’une classe de relations pour examiner les remarques relatives aux classes de relations de géodatabase.
Rubriques connexes
Vous avez un commentaire à formuler concernant cette rubrique ?