Closed laowantong closed 1 year ago
D'un point de vue pédagogique, les étudiants ont tendance à confondre/mélanger diagramme E/A et schéma relationnel (sous forme textuel). J'évite du coup de leur montrer un schéma relationnel sous forme graphique pour ne pas ajouter à la confusion. Mais beaucoup d'outils de modélisation permettent la visualisation du schéma relationnel sous forme graphique, donc ça peut être une feature intéressante.
Je génère déjà ce que j'ai appelé un diagramme relationnel (je vous laisse regarder la doc). Ici ce serait juste le graphe orienté que j'ai décrit.
Exemple de diagramme relationnel :
Graphe orienté correspondant :
Au format Graphviz :
digraph {
entreprise -> client
thème -> maîtriser
formation -> session
client -> inscrire
session -> inscrire
session -> animer
animateur -> animer
animateur -> session
animateur -> maîtriser
thème -> intéresser
entreprise -> intéresser
thème -> formation
}
Il pourrait être intéressant de générer une version simplifiée du diagramme relationnel sous la forme d'un graphe orienté dont les sommets seraient les tables et les arcs les relations de clé étrangère (inversées). Le plongement par défaut de Graphviz (dot) présente les sommets d'un tel graphe par ordre topologique (autant que faire se peut). Connaître cet ordre serait utile pour remplir la base sans désactiver les contraintes de clés étrangères, ou en les désactivant au minimum (p. ex., DF réflexive).