Vous pouvez créer des classes de relations entre une table ou une classe d’entités dans une géodatabase à l’aide de l’outil de géotraitement Créer une classe de relations ou Table vers classe de relations dans ArcGIS Pro. Vous pouvez utiliser ces outils pour créer des classes de relations simples, composites et attribuées.
Une classe de relations simple, qui associe des entités d’une classe d’entités à des entités d’une autre classe d’entités, permet aux entités associées d’exister indépendamment les unes des autres. La connexion entre ces entités est gérée par le biais d’une clé étrangère dans l’enregistrement enfant, qui est lié à son enregistrement parent. Si un objet d’origine est supprimé ou s’il n’existe pas d’enregistrement parent correspondant à un enregistrement enfant, la clé étrangère prend la valeur Null, ce qui garantit l’intrégrité référentielle. Cette clé étrangère peut être mise à jour pour former une nouvelle relation avec une autre entité d’origine.
Par exemple, dans un système de maintien de l’ordre, il existe une relation un vers plusieurs entre les postes de police (origine) et les officiers de police (destination). Chaque poste héberge plusieurs officiers, mais chaque officier n’est affecté qu’à un poste. Si un poste est démoli, les officiers peuvent être réaffectés à un autre poste, ce qui crée une nouvelle relation.
Avant de suivre les étapes ci-après, reportez-vous à la rubrique Préparer la création d’une classe de relations pour passer en revue les exigences liées aux données. .
Remarque :
Les classes de relations sont prises en charge dans les géodatabases fichier, mobiles et d’entreprise. Pour créer une classe de relations, vous pouvez cliquer avec le bouton droit de la souris sur une géodatabase existante ou sur un jeu de classes d’entités dans une géodatabase. Si voux créez une classe de relations dans une géodatabase d’entreprise, vous devez vous connecter à la géodatabase d’entreprise en tant qu’utilisateur doté de privilèges permettant de créer des données dans la base de données.
Pour créer une classe de relations simple, procédez comme suit :
- Démarrez ArcGIS Pro, puis ouvrez un projet existant ou commencez sans modèle.
- Dans la fenêtre Catalog (Catalogue), cliquez avec le bouton droit de la souris sur une géodatabase existante, puis cliquez sur New (Nouveau) dans le menu contextuel.
- Cliquez sur Relationship Class (Classe de relations) .
L’outil de géotraitement Créer une classe de relations s’ouvre avec les paramètres par défaut.
- Pour le paramètre Origin Table (Table d’origine), vous pouvez sélectionner un jeu de données dans la liste ou utiliser le bouton de navigation pour rechercher un jeu de données.
- Pour le paramètre Destination Table (Table de destination), vous pouvez sélectionner un jeu de données dans la liste ou utiliser le bouton de navigation pour sélectionner le jeu de données.
- Pour le paramètre Output Relationship Class (Classe de relations en sortie), cliquez sur le bouton de navigation , accédez à la géodatabase dans laquelle la classe de relations sera stockée, indiquez un nom pour la classe de relations dans la zone de texte Name (Nom), puis cliquez sur Save (Enregistrer).
Pour cet exemple, la table d’origine et la table de destination se trouvent dans une géodatabase mobile nommée Wyoming Natural Assets.geodatabase. La classe de relations doit également se trouver dans cette géodatabase mobile. Étant donné que la géodatabase mobile est construite sur SQLite, le préfixe main est ajouté automatiquement au nom de la classe de relations pour indiquer que la classe de relations appartient à la structure principale, à savoir la structure par défaut pour une base de données SQLite.
Le nom de la classe de relations est reflété dans le paramètre Output Relationship Class (Classe de relations en sortie).
- Pour le paramètre Relationship Type (Type de relation), sélectionnez Simple dans la liste déroulante.
Pour en savoir plus sur les différences entre les types de classe de relations simple et composite, reportez-vous à la rubrique Types de classe de relations de géodatabase.
- Fournissez des valeurs pour les paramètres Forward Path Label (Dénomination origine vers destination) et Backward Path label (Dénomination destination vers origine).
La dénomination origine vers destination décrit la relation de la classe d’origine vers la classe de destination et la dénomination destination vers origine décrit la relation dans l’autre sens, de la classe de destination vers la classe d’origine. Reportez-vous à la rubrique Paramètres de l’outil Créer une classe de relations pour en savoir plus sur ces dénominations.
- Étant donné que vous créez une classe de relations simple, pour le paramètre Message Direction (Sens des messages), sélectionnez None (no messages propagated) [Aucun (aucun message transmis)].
Le paramètre Message Direction (Sens des messages) spécifie la façon dont les messages sont transmis entre les objets associés. Ce paramètre s’applique si vous voulez implémenter des comportements de mise à jour ou de suppression en cascade personnalisés pour la classe de relations. Reportez-vous à la rubrique Paramètres de l’outil Créer une classe de relations pour en savoir plus sur les différents effets de la définition du paramètre Message Direction (Sens du message) pour une classe de relations simple ou composite.
- Pour le paramètre Cardinality (Cardinalité), sélectionnez l’option de cardinalité appropriée pour les données dans la classe de relations.
La cardinalité d’une classe de relations indique combien d’objets dans l’origine sont associés à combien d’objets dans la destination. Les options du paramètre Cardinality (Cardinalité) sont les suivantes :
- One to one (1:1) [Un vers un (1:1)] : chaque ligne ou entité dans la table d’origine peut être associée à zéro ou une ligne ou entité dans la table de destination. Il s’agit de l’option par défaut.
- One to many (1:M) [Un vers plusieurs (1:M)] : chaque ligne ou entité dans la table d’origine peut être associée à une ou plusieurs lignes ou entités dans la table de destination.
- Many to many (M:N) [Plusieurs vers plusieurs (M:N)] : plusieurs lignes ou entités dans la table d’origine peuvent être associées à plusieurs lignes ou entités dans la table de destination.
- Si vous le souhaitez, sélectionnez ou non le paramètre Relationship class is attributed (Classe de relations attribuée) pour spécifier si la classe de relations aura des attributs.
- Paramètre non sélectionné : la classe de relations n’aura pas d’attributs. Il s’agit de l’option par défaut.
- Paramètre sélectionné : une classe de relations attribuée sera créée. Lorsqu’une classe de relations plusieurs vers plusieurs (M:N) ou attribuée est créée, une table intermédiaire de classes de relations est créée. Cette table permet de faire correspondre les associations entre les objets d'origine et de destination. Reportez-vous à la rubrique Types de classe de relations de géodatabase pour en savoir plus sur les classes de relations attribuées.
- Pour les paramètres Origin Primary Key (Clé primaire d’origine) et Origin Foreign Key (Clé étrangère d’origine), spécifiez un champ de la table d’origine et un champ de la table de destination, respectivement.
Les paramètres Origin Primary Key (Clé primaire d’origine) et Origin Foreign Key (Clé étrangère d’origine) spécifient la clé primaire dans la classe d’entités d’origine et le champ de clé étrangère associé dans la table de destination. Pour le paramètre Origin Foreign Key (Clé étrangère d’origine), seuls les champs dont le type de données est identique à celui du champ spécifié pour le paramètre Origin Primary Key (Clé primaire d’origine) sont affichés.
- Cliquez sur Run (Exécuter) pour créer la classe de relations.
Remarque :
Vous pouvez cliquer sur le menu déroulant Run (Exécuter), puis cliquer sur Schedule Run (Planifier l’exécution) pour exécuter l’outil ultérieurement et, si vous le souhaitez, de façon récurrente.
En savoir plus sur la planification des outils de géotraitement
Rubriques connexes
Vous avez un commentaire à formuler concernant cette rubrique ?