Transformation d'un héritage vers des entités
Situation des exemples
Nous utiliserons dans les exemples suivants les lettres A, B, et C pour désigner les entités, A étant le surtype de B et C.
Transformation par héritage descendant
Dans le cas de l'héritage descendant, nous allons porter notre attention sur les sous-types. Selon les différentes contraintes de sous-type, nous risquons de perdre de l'information lors de la transformation d'une relation is-a vers des types entités.
Tableau des transformations par héritage descendant
Nom | Totalité | Disjonction | Transformation | Dangers | |
P | Partition | Oui | Oui | Nous ne gardons que les entités B et C. Les champs des attributs de A sont présents dans B et dans C. | Nous ne pouvons plus vérifier l'identifiant global de A. |
D | Disjonction (+partiel) | Non | Oui | Nous gardons toutes les entités, mais les champs des attributs de A sont présents dans B et dans C. | Il s'agit peut être d'une entité unique qui soit à la fois de type B et de type C. |
T | Recouvrement total | Oui | Non | Nous ne gardons que les entités B et C. Les champs des attributs de A sont présents dans B et dans C. | Nous ne pouvons plus vérifier l'identifiant global de A. Mais en plus: Il s'agit peut être d'une entité unique qui soit à la fois de type B et de type C. |
Recouvrement partiel | Non | Non | Nous gardons toutes les entités, mais les champs des attributs de A sont présents dans B et dans C. | Nous ne pouvons plus vérifier l'identifiant global de A. Mais en plus: Il s'agit peut être d'une entité unique qui soit à la fois de type B et de type C. |
Transformation par héritage ascendant
Dans le cas de l'héritage ascendant, nous allons porter notre attention sur les surtypes. Nous ne risquons pas ici de perdre de l'information, mais nous risquons un gaspillage des resources.
Tableau des transformations par héritage ascendant
Nom | Totalité | Disjonction | Transformation | Dangers | |
P | Partition | Oui | Oui | Nous ne gardons que l'entité A et nous "remontons" les champs des attributs de B et de C dans A. | exact-1 : ancien_attrib_b ancien_attrib_c =exactement un |
D | Disjonction (+partiel) | Non | Oui | Nous ne gardons que l'entité A et nous "remontons" les champs des attributs de B et de C dans A. | excl : ancien_attrib_b ancien_attrib_c =un par exclusion |
T | Recouvrement total | Oui | Non | Nous ne gardons que l'entité A et nous "remontons" les champs des attributs de B et de C dans A. | at-lst-1 : ancien_attrib_b ancien_attrib_c =au moins un |
Recouvrement partiel | Non | Non | Nous ne gardons que l'entité A et nous "remontons" les champs des attributs de B et de C dans A. | aucune indication |
Version en cache
21/11/2024 09:37:11 Cette version de la page est en cache (à la date du 21/11/2024 09:37:11) afin d'accélérer le traitement. Vous pouvez activer le mode utilisateur dans le menu en haut pour afficher la dernère version de la page.Document créé le 01/01/1970, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/sgbdr-schema-transformation-heritage.html
L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.
Références
- IHDCB334 - Ingénérie des bases de données : Jean-Luc HAINAUT, Anne-France BROGNEAUX,
Cours d'Ingénérie des bases de données
(2003)
Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.