Modéliser les données avec MySQL Workbench
Avant-propos
L'objet est ici de rassembler, harmoniser et compléter les réponses faites aux questions
des forumeurs de Developpez.com ayant déjà un minimum de connaissances en modélisation, soucieux de représenter correctement
les structures de leurs bases de données sans devoir investir dans un AGL onéreux, alors que la version gratuite de MySQL
Workbench¹ (MWB) permet de répondre de façon satisfaisante à leur besoin.
Du point de vue de l'abstraction, un diagramme MWB est en théorie un cran en dessous d'un MCD de Merise
ou d'un diagramme de classes UML — il se situe au niveau MLD (modèle logique des données) de Merise —,
il ne prend donc pas
formellement en compte des concepts tels que la généralisation/spécialisation, l'agrégation, la composition, mais ça n'est pas
vraiment un problème, l'outil offrant ce qui est nécessaire et suffisant pour leur mise en oeuvre. Par contre les diverses
contraintes telles que l'exclusion, l'inclusion, la totalité ne sont pas considérées ici.
L'objet étant la modélisation des données, les possibilités offertes
par l'outil qui
ressortissent à l'administration de la base de données sont passées sous silence (structures physiques d'accueil
des tables, partitioning), mais abordées quand c'est inévitable (index en relation avec les clés).
Plus généralement pour tout ce qui relève du physique, à chacun (ou plutôt à son DBA préféré)
de s'en préoccuper en fonction de son SGBD cible. La manipulation des données (requêtes SQL) n'est pas
non plus prise en considération,
on en reste à la structurel et à l'intégrité des données.
L'article s'adresse donc à celui qui a besoin de disposer d'une représentation graphique de la
base de données, à partir de quoi il pourra produire de façon automatique un script SQL conforme de création des
tables, compte non tenu toutefois de l'ensemble des caractéristiques physiques de la base de données.
N.B. On utilise ici la version gratuite (open source) de MySQL Workbench 6.0 : l'outil
ne vérifie pas
la validité des modèles (tables en double, clés non définies ou incohérentes, etc.), mais cela ne doit pas gêner celui
qui travaille avec sérieux. De toute façon, lors de l'exécution des instructions SQL CREATE/ALTER TABLE, le SGBD se
chargera de rappeler à l'ordre l'étourdi.
A toutes fins utiles, signalons encore qu'on utilise ici MySQL Workbench pour Windows.
Un très grand merci à Fabien (f-leb) qui a bien voulu accepter de relire l'article et n'a pas
ménagé sa peine, ainsi qu'à Kropernic dont l'oeil vaut celui du lynx.
Documentation officielle du produit :
http://dev.mysql.com/doc/index-gui.html
(PDF téléchargeable).
(Si le lien n'est pas trouvé, rechercher : « MySQL Workbench Reference Manual »).
Pour l'ensemble des fonctionnalités (version open source / commerciale) :
http://www.mysql.fr/products/workbench/features.html
Questions et commentaires à propos de cet article sont les bienvenus.
Rendez-vous autour de la discussion ad-hoc : 9 commentaires
________________________________________________________________
¹ © 2013, Oracle Corporation and/or its affiliates.
Article lu fois.
L'auteur
L'article
Publié le 30 janvier 2014
Version en ligne