Association réflexive dans MySQL Workbench
Bonjour à tous,
Suite à notre dernière discussion, j'aimerais savoir si les deux MLD que j'ai faites sont corrects :
1. Association réflexive (0,1) - (0,n) :
MCD
http://img33.imageshack.us/img33/986...nreflexive.png
MLD
http://img14.imageshack.us/img14/544...nreflexive.png
2. Association réflexive (1,1) - (0,n) :
MCD
http://img189.imageshack.us/img189/9...nreflexive.png
MLD
http://img855.imageshack.us/img855/1...nreflexive.png
Est-ce que je peux renommer "personne_id" en "personne_id_fils" si la table "personne" est liée à d'autres tables dans MySQL Workbench ?
Merci.
Associations réflexives, auto-référentielles, etc.
Bonsoir,
Citation:
Envoyé par
Age_of_Aquarius
Et par la suite modifier le champs "personne_id_pere" en mettant la bonne personne.
Sinon, comment fait-on pour résoudre ce genre de problèmes dans les SGBD ?
Quel que soit le MLD, la cardinalité minimale 1 engendre un problème d’ordre ontologique dans la représentation des hiérarchies et nomenclatures en tous genres : tout le monde a un père, mais comme le fait observer CinePhil, qui dans la base de données est père d’Adam ?
Quoi qu’il en soit, vous devrez d’abord insérer un tuple dans lequel les attributs personne_id et personne_id_pere prendront la même valeur, signifiant ainsi qu’Adam est père d’Adam... Ça fait bizarre, mais c’est la conséquence de votre modélisation, les SGBD n’y peuvent rien. Quant à « la bonne personne », si ça n’est pas Adam lui-même, elle ne peut être qu’un descendant d’Adam, ce qui provoque un cycle redoutable bien plus difficile à contrôler que la simple auto-référence Adam -> Adam. Dans tous les cas, vous devrez en tenir compte dans vos requêtes pour ne pas voir partir celles-ci dans des boucles infinies...
La structure de votre table PERSONNE ressemble à celle de la table CATEGORIE ici qui est source évidemment de problèmes identiques. Vous y réfléchissez et éventuellement vous pouvez reprendre au début de la discussion avec Michael, discussion dans laquelle CinePhil ne fait du reste rien qu’à m’embêter...