Licence de Sciences et Techniques Unité denseignement BASES DE DONNEES Le modèle relationnel François Jacquenet Professeur d'Informatique Faculté des Sciences.

Slides:



Advertisements
Présentations similaires
Les Systèmes de Gestion de Bases de Données (SGBD) df - normalisation.
Advertisements

Rappels. Les Systèmes de Gestion de Bases de Données (SGBD) L'algèbre relationnelle.
Matière/Sources: Daniel Bardou, Julie Dugdale &
Bases de données : modèlisation et SGBD
Un modèle conceptuel Le modèle Entité-Association Frédéric Gava (MCF)
19 septembre 2006 Tendances Logicielles IBM Rational Data Architect Un outil complet de modélisation et de conception pour SGBD Isabelle Claverie-Berge.
Introduction Pour concrétiser l’enseignement assisté par ordinateur
Modèle Entités-Associations
Modélisation d’une base de données
M.E.D.A.L. Module dEnseignement à Distance pour lArchitecture Logicielle Alain VAILLY Diapositive n° 1 IUP MIAGE - Université de NANTES IUP-MIAGE 3ème.
Le modèle logique des données relationnel MLD
Bases de Données Relationnelles Modélisation Conceptuelle (Chapitre 3) Validation et transformations.
Le Modèle Relationnel (Chapitre 4)
Le Modèle Logique de Données
Algèbre relationnelle
ACCESS Découverte.
TP 3-4 BD21.

Programme Introduction aux BD et aux SGBD Le modèle relationnel
Initiation au système d’information et aux bases de données
1 ARCHITECTURE DACCÈS la méthode générale modèle de données définitions module daccès / modules métiers construction des modèles les modules daccès, les.
Développement d’applications web
Bases de Données Relationnelles
Algèbre relationnelle
B.Shishedjiev - Modèle relationnel
Initiation à la conception de systèmes d'information
Modélisation E/R des Données
Geti2101 : Systèmes d’Information et Informatique
Introduction à la conception de Bases de Données Relationnelles
Les bases de données Cours assuré par: Mlle Smii imen
Chap 4 Les bases de données et le modèle relationnel
Initiation aux bases de données
Les formes normales.
La structuration et la représentation informatique de l'information
Conception d’une Base de Données Passage au Schéma Relationnel
L’utilisation des bases de données
Modèle Logique de Données
Cas pratique : Interim.
SYSTEMES D’INFORMATION
MODELE RELATIONNEL concept mathématique de relation
Cours de Base de Données & Langage SQL
Cours N°2 Base de Données & Langage SQL
Les concepts et les méthodes des bases de données
Management of Information Technology - e-business
Initiation aux bases de données et à la programmation événementielle
Initiation à la conception des systèmes d'informations
Michel Tollenaere SQL et relationnel ENSGI Cours MSI 2A Relationnel et SQL version 1.4 du 25 septembre 2007 (ajout jointures) 1 Modèle relationnel Historique.
Plan UE Introduction aux Bases de Données
Bases de données.
Conception d’un diagramme EA Frédéric Gava (MCF) LACL, bâtiment P2 du CMC, bureau 223 Université de Paris XII Val-de-Marne 61 avenue.
Intégration de schémas
DOSSIER G10 – La base de données Relationnelle
Bases de données : modèlisation et SGBD
Sélection de colonnes (la projection)
N.Mellouli-Nauwynck & M.Lamolle1 Intégration de bases de données hétérogènes N.Mellouli-Nauwynck M.Lamolle.
Quinio1 Bases de données : modèlisation et SGBD Séance 3 B Quinio.
Initiation aux SGBD Frédéric Gava (MCF)
Introduction avec Access Quinio Nanterre 2008
1 Structure en MC Principes Stockage des données dans la mémoire volatile d’un ordinateur Problèmes Stockage temporaire «Petits» volumes de données Langages.
Séance /10/2004 SGBD - Approches & Principes.
Introduction aux Bases de Données et au langage SQL
Initiation aux bases de données et à la programmation événementielle
INTRODUCTION AUX BASES DE DONNEES Base et métabase
Le modèle logique des données relationnel
Bases de données – Cours 2
Les bases de données Séance 3 Construction du Modèle Conceptuel de Données.
Les bases de données Séance 4 Construction du Modèle Physique (la BDD)
Cours de Systèmes de Gestion de Données - Licence MIAGE – 2003/20041 Cours n°2 La conception d ’un schéma relationnel (suite) Chantal Reynaud Université.
Bases de données : modèlisation et SGBD Séance 3.
Schéma de base de données Présentation. Conception du schéma logique  Transformation du schéma conceptuel en structures de données supportées par les.
Transcription de la présentation:

Licence de Sciences et Techniques Unité denseignement BASES DE DONNEES Le modèle relationnel François Jacquenet Professeur d'Informatique Faculté des Sciences Laboratoire Hubert Curien – UMR CNRS rue Benoit Lauras Saint-Etienne cedex 2 Tél : Web :

Que verrons nous aujourdhui ? Le modèle relationnel Traduction EA --> Relationnel Validation et transformation de modèle EA

Le modèle relationnel Modèle de niveau logique, très simple Défini par Ted Codd en 1970; prix Turing en Développé au centre de recherche d'IBM (Almaden, Californie) Aujourd'hui utilisé par beaucoup de SGBD commerciaux (Oracle, Informix, DB2, Ingres, Sybase, dBase, Access …) et SIG Modèle à deux concepts: relation (table) attribut (colonne)

Concepts de base Etudiant (N°Etud, nom, prénom, age) nom de la relation noms des attributs N°Etud nom prénom age 136 Dupont Jean Aubry Annie Duval André Dupont Marc 21 Etudiant schéma population tuple ou occurrence

Schéma relationnel une BD = un ensemble de relations schéma d'une BD relationnelle = un ensemble de schémas de relation: R1, R2, …, Rx schéma d'une relation = un ensemble d'attributs Ri = (A1/d1, A2/d2, …, Ay/dy) ou, plus simplement, Ri = (A1, A2, …, Ay)

Règles de structuration attributs: simples et monovalués (domaine de valeurs atomiques) structure plate regulière tuple x: une et une seule valeur atomique par attribut x x x x x x wwww w w INTERDIT

Valeurs nulles Un attribut peut ne pas être valué pour un tuple: on dit alors qu'il a une valeur nulle exemple : on ne connaît ni l'age d'Annie ni le prénom de Duval 136 Dupont Jean Aubry Annie NULL 101 Duval NULL Dupont Marc 21

Les identifiants Toute relation possède un identifiant (clé) il ne peut y avoir deux tuples identiques dans la même relation L'identifiant n'admet pas de valeurs nulles N°Etud nom prénom age 136 Dupont Jean Aubry Annie Duval André Dupont Marc 21 Etudiant

Identifiant externe Cours(NomC,horaire,prof) Suit(N°Etud,NomC) BD Mercredi Duval SE Mardi Malin Suit traduit un TA entre Etudiant et Cours. Elle comporte les identifiants de Etudiant et de Cours. Suit.NomC est un identifiant externe sur Cours. 253 SE 136 BD 253 BD 101 SE

Domaine de valeurs Un domaine est un ensemble de valeurs atomiques que peut prendre un attribut (cf. EA) Exemples de domaines: Dnom : chaînes de caractères de longueur maximale 30 Dnum : entiers compris entre 0 et Dcouleur : {"bleu", "vert", "jaune"} Dâge : entiers compris entre 16 et 65

Définition d'une relation Une relation est définie par : son nom sa liste de couples son (ses) identifiant(s) la définition de sa sémantique (phrase en français) Exemple : Etudiant (N°Etud : Dnum, Nom : Dnom, Prénom : Dnom, Age : Dâge) Identifiant : N°Etud Définition : tout étudiant actuellement immatriculé à l'UJM

Contraintes de modélisation Les notions d'attribut multivalué ou complexe n'existent pas dans le modèle relationnel. Il faut donc les modéliser autrement. Pour un attribut complexe, il faut choisir entre le composé ou les composants Pour un attribut multivalué, il faut créer une autre relation (ceci pour chaque attribut multivalué)

Représentation d'attribut complexe Soit adresse : nom_rue, num, ville, code Solution 1 un attribut par composant: nom_rue, num, ville, NPA "Rue de la presse", "5", "Saint-Etienne", "42000" il est éventuellement possible de définir par ailleurs une vue restituant la notion globale d'adresse Solution 2 un attribut adresse dont le domaine est une chaine de caractères "Rue de la presse 5 Saint-Etienne 42000" adresse nom_ruenumvillecode

Représentation d'attribut multivalué Exemple: mémoriser les différents prénoms des étudiants Solution incorrecte Plusieurs attributs : Prénom1, Prénom2,… Solution correcte : créer une relation supplémentaire: PrénomsEtudiants( Num_Etud, Prénom ) 136 Jean 136 Marie 101 André 253 Annie 253 Claudine Ou liste ordonnée: EtudPrénoms2 (N°Etud, N°Prénom, Prénom)

Identifiant d'une relation Une relation peut avoir plusieurs identifiants PrénomsEtudiants2 (N°Etud, N°Prénom, Prénom) N°Etud + N°Prenom N°Etud + Prenom Définition : L'identifiant d'une relation est un ensemble minimum d'attributs de la relation, tel qu'il n'existe pas 2 tuples ayant même valeur pour cet identifiant. Règle : tous les attributs de tout identifiant doivent toujours avoir une valeur connue (non nulle).

Identifiants externes Décrivent des liens entre relations Suit (N°Etud : Dnum, NomC : Dnom) N°Etud référence un Etudiant NomC référence un Cours Si la relation référencée possède plusieurs identifiants, il faut préciser: N°Etud référence un Etudiant.N°Etud Vérification de lintégrité référentielle assurée par le SGBD: les identifiants externes désignent nécessairement des tuples existants.

Récapitulatif Un schéma relationnel se compose: pour chaque relation de: nom de la relation définition attributs + domaines identifiant(s) éventuellement identifiant(s) externe(s) contraintes d'intégrité associées et des autres contraintes d'intégrité qui portent sur plusieurs relations.

Exemple de schéma relationnel Domaines : Dnom : chaînes de caractères de longueur inférieure à 30 Dch100 : chaînes de caractères de longueur inférieure à 100 Dannée : [1970, 1990 ] Dnote : [0.0, 20.0 ] Ddate : [1, 31] / [1, 12] / [1920, 1990]

Exemple de schéma relationnel Relation : Personne Attributs : n°P : entier sans nul nom : Dnom sans nul adr : Dch100 sans nul Identifiant: : n°P Définition: tout étudiant et tout enseignant de l'école (état actuel). Relation : PersonnePrénoms (permet d'avoir une liste de prénoms pour une personne donnée) Attributs : n°P : entier sans nul prénom : Dnom sans nul Identifiant: : n°P + prénom Identifiant externe : n°P référence une Personne Définition : prénoms des personnes

Exemple de schéma relationnel Relation : Etudiant Attributs : n°P : entier sans nul n°E : entier sans nul dateN : Ddate sans nul Identifiants : (n°E ) (n°P ) Identifiant externe : n°P référence une Personne Définition : tout individu qui est actuellement inscrit à l'école, ou qui a déjà passé avec succès un des cours de l'école Relation : EtudiantEtudes Attributs : n°E : entier sans nul année : Dannée sans nul diplôme : Dnom sans nul Identifiant: (n°E + diplôme ) Identifiant externe : n°E référence un Etudiant.n°E Définition : études antérieures des étudiants

Exemple de schéma relationnel Relation : Enseignant Attributs: n°P : entier sans nul tel: : entier sans nul statut : Dnom sans nul banque : Dnom sans nul agence : Dnom sans nul compte : entier sans nul Identifiant : (n°P ) Identifiant externe : n°P référence une Personne Définition : tout individu assurant actuellement un ou plusieurs cours à l'école Relation : Cours Attributs : nomC : Dnom sans nul cycle : entier sans nul n°Ens : entier sans nul Identifiant : (nomC ) Identifiant externe : n°Ens référence un Enseignant Définition : tout cours actuellement offert par l'école

Exemple de schéma relationnel Relation : Obtenu Attributs: n°E : entier sans nul nomC : Dnom sans nul note : Dnote sans nul année : Dannée sans nul Identifiant : (n°E + nomC ) Identifiants externes : n°E référence un Etudiant.n°E nomC référence un Cours Définition : l'étudiant n°E a réussi le cours nomC telle année et a obtenu telle note Relation : Inscrit Attributs: n°E : entier sans nul nomC : Dnom sans nul Identifiant : (n°E + nomC ) Identifiants externes : n°E référence un Etudiant.n°E nomC référence un Cours Définition : actuellement, l'étudiant n°E est inscrit au cours nomC

Exemple de schéma relationnel Relation : Prérequis Attributs: nomC : Dnom sans nul nomCprérequis : Dnom sans nul Identifiant : (nomC + nomCprérequis ) Identifiants externes : nomC référence un Cours nomCprérequis référence un Cours Définition: le cours nomCprérequis est un prérequis pour le cours nomC Contrainte d'intégrité : dans tout tuple, nomCprérequis doit être différent de nomC

Exemple de schéma relationnel Contraintes d'intégrité : Pour tout tuple de Prérequis, le cycle de nomCprérequis dans Cours doit être inférieur ou égal à celui de nomC: in Prérequis => x.cycle > y.cycle Pour tout tuple de EtudiantEtudes, soit dateN la date de naissance des étudiants dans la relation Etudiant, alors: dateN < année: in EtudiantEtudes, in Etudiant => d < y

Exemple de schéma relationnel Contraintes d'intégrité (suite): Pour tout tuple de Etudiant : cette_année - dateN = 18, où cette_année est une variable du SGBD Pour tout tuple de Obtenu, soit dateN la date de naissance de l'étudiant dans la relation Etudiant, alors : dateN < année Pour tout tuple de Inscrit, le n°E doit exister dans Obtenu associé à tous les cours existant dans Prérequis associés à nomC.

On est expert en modélisation entité-association... comment peut-on devenir expert en modélisation relationnelle ?

Transformation EA -> Relationnel Nous avions vu le modèle entité-association Nous venons de voir le modèle relationnel Comment peut-on passer du modèle conceptuel au modèle logique ?

Transformation d'un type d'entités IdABCD Type d'Entités

Attributs simples Tous les attributs monovalués peuvent être regroupés dans une même relation TE1 (Id, A, B) A NOT NULL Pour chaque attribut multivalué on créé une relation supplémentaire TE2 (Id, C)C NOT NULL TE3 (Id, D) [Id] TE2 = [Id] TE1 [Id] TE3 [Id] TE1 IdABCD Type d'Entités

Attributs complexes 2 solutions : TE1 (Id, A1, A2) A1 NOT NULL (on perd le nom A) TE1 (Id, A)A NOT NULL avec dom (A) = dom (A1) x (dom (A2) ) IdA TE A1A1A2A2

Attributs complexes employé(E#, année-n, mois-n, jour-n, année-e, mois-e, jour-e) employé'(E#, date_naissance, date_embauche) employé E# date_naissance année mois jour date_embauche année mois jour

Attributs complexes multivalués 1) si A1 A2 : TE1 (Id, A1) & TE2 (A1, A2) TE (Id, A1, A2) E#projets Employé nomdirecteur DF Employé(E#, nomprojet) Projet(nom, directeur) IdA TE A1A1A2A2 Rappel pour les mono valués:

Attributs complexes multivalués 2) si (Id, A1) A2 : TE (Id, A1, A2) IdA TE A1A1A2A2 E#projets Employé nomrole DF Employé(E#, nomprojet, role) DF

Amas (multisets, multi-ensembles) Problème: les attributs multivalués peuvent inclure plusieurs fois la même valeur Hingis a gagné deux fois dans la même journée il faut inventer un identifiant local : n°_match Jidmatch JoueurTennis daterésultat JoueurTennis(Jid, date, resultat) ???

Identifiants artificiels J# match JoueurTennis n°_match date résultat DFs JoueurTennis(J#, no-match, date, résultat)

Associations On a les relations : X ( ) Y ( ) Z ( ) On créé la relation : R(Id x, Id y, Id z, Ratt1,..., Rattn) et on a : [Id x ] R [Id x ] X [Id Y ] R [Id x ] Y [Id Z ] R [Id x ] Z

Associations (cas particuliers) au moins un role monovalué Pas besoin de relation R : X (Idx,..., Idy, Idz, Ratt1,..., Rattn) Y ( ) Z ( ) Ici on peut étendre X ou Z

Contraintes d'intégrité Contrainte : Seules les personnes de plus de 18 ans peuvent conduire des voitures x Personne AND (x, v) Conduit x.age > 18 Personne(Pid,..., age) Voiture(V#V#,...) Conduit(Pid, V#,...) PersonneVoiture Conduit On peut vérifier l'intégrité grâce à une requête SELECT * FROM Personne, Conduit WHERE Personne.Pid=Conduit.Pid AND Personne.age <18 résultat = 0 la contrainte est vérifié x Personne AND (x, v) Conduit AND x.age<18 = FALSE

Pour vérifier les contraintes d'intégrité Solution 1: démarrer une transaction exécuter la mise à jour exécuter la requête de validation de la C si résultat 0 abort de la transaction sinon commit

Pour vérifier les contraintes d'intégrité Solution 2: définir une vue qui respecte la CI valider la mise à jour par rapport à la définition de la vue sil y a incohérence abandonner la mise à jour sinon exécuter la mise à jour Solution 3: utiliser les triggers ON UPDATE DO...

Mais si notre modèle entité-association n'était pas correct ?

Validation d'un schéma conceptuel Syntaxique: respect des règles du modèle Par confrontation aux dépendances: règles de normalisation Par jeu d'essai Complétude par rapport aux traitements Par les utilisateurs Règles à connaître et à appliquer !!!

Concept de dépendance A B si le fait que deux occurrences aient la même valeur pour A entraîne nécessairement qu'elles aient la même valeur pour B. A B : «B dépend de A», «A détermine B » N°carte nom, prénoms, date naissance, adresses Etudiant N°_carte nom prénoms date_naissance adresses jour mois année n° rue ville code_postal liste

Validation d'un TE (TA) /dépendances Etudiant N°_carte nom prénoms date_naissance adresses liste jour mois année n° rue ville code_postal Règle 1: dans un TE (TA) valide, tous les attributs directs (simples et complexes) dépendent uniquement de chaque identifiant entier du TE (TA). n°carte, nom, prénoms, date naissance et adresses sont les attributs directs dEtudiant, qui a pour identifiant n°carte

Schéma incorrect La règle est contredite si un attribut dépend d'une partie de l'identifiant ou d'un autre attribut non identifiant. No-carte nom-section directeur_section nom_étudiant Etudiant No-carte nom_section directeur_section nom_étudiant Etudiant mauvais

Normalisation Processus de modification d'un schéma qui conduit à obtenir un schéma offrant les propriétés désirées. Correct ! No-carte section nom étudiant nom nom directeur Etudiant No-carte nom-section directeur section nom étudiant Mauvais

Dépendances et identifiant Graphe des dépendances N°_carte nom_section directeur_section nom_étudiant L'identifiant est la racine du graphe N°_carte nom_sectiondirecteur_sectionnom_étudiant

Validation /attributs complexes Règle 2: Un attribut du i ème niveau peut seulement dépendre d'une combinaison d'attributs du même niveau et de niveaux supérieurs contigus. nomLabdirecteurchercheurs nomCadressedateentrée%tempsprojets nomPbudgetdescription lignemontant Laboratoire

Dépendances entre TE Si tout projet n'est fait que par un seul labo, le schéma est incorrect LaboChercheur Emploie Projet mauvais Règle 3: un TA n-aire (n>2) avec une dépendance entre ses TE doit être decomposé

Normalisation incorrecte d'un TA Chercheur Emploie Projet Conduit Labo mauvais Mauvaise décomposition du TA ternaire incorrect en deux TA binaires Cette décomposition n'est pas correcte car elle induit une perte d'information – on ne sait plus sur quel projet travaille un chercheur !!

Normalisation correcte d'un TA Décomposition du TA ternaire incorrect en deux TA binaires sans perte d'information: un chercheur est employé par le labo qui conduit le projet sur lequel le chercheur travaille Chercheur Emploie Projet Conduit Labo

Validation des attributs d'un TA Règle 4: dans un TA sans dépendance entre les TEs liés, les attributs du TA dépendent de tous les TE liés par ce TA. (No-carte,No-Mat) moyenne, notes EtudiantMatière Evaluation N°_carte nom moyenne notes N°_Mat coefficient

Validation des attributs d'un TA Si Coef = fonction du nombre d'heures assurées par l'enseignant dans ce cours. Alors Coef ne dépend pas dEtudiant EtudiantEnseignant N°_carte notes Nom Contrôle Nom Cours Cours Assure coef correct EtudiantEnseignant Contrôle Nom Cours Cours N°_carte notes coef Nom mauvais

Elimination des TA redondants Si "Est élève de" = Inscrit –Cours – Assure alors il y a redondance inutile. On supprime "Est élève de". EtudiantCoursEnseignant Inscrit Assure Est élève de

Remplacement d'un attribut par un TA EmployéService N°_emp …. n°_service n° étage nom mauvais Règle de remplacement N°_emp …. n° étage nom EmployéService Travaille

Elimination des TE inutiles Un TE est inutile s'il ne présente d'intérêt pour aucun traitement de l'application Si il n'existe pas de requête portant directement sur les services, Services est transformé en attribut. EmployéService Travaille N°_emp …. service Employé n° étage nom N°_emp …. n° étage nom

TE répertoire ou attribut Nom Type Num A moins que l'on souhaite gérer un répertoire des salles. CoursSalle A lieu dans Cours Nom Type Num_salle

Transformation de schémas La même réalité peut être modélisée de plusieurs façons différentes Les choix sont dictés par les objectifs des applications Si les objectifs divergent, le choix le moins contraignant est retenu

Relativisme cable bleurouge cable cuivrefibre cable couleur materiau cable couleur materiau

Choix de modélisation TE ou attribut ? TE ou TA ? TA ou attribut ? Types génériques ou types spécialisés ? Attribut optionnel ou sous-type ?

TE ou attribut Employé n°-secu nom service nom étage Service nom étage Employé no-AVS nom ?

Transformation d'attribut en TE EmployéService n°_secu nom nom étage Travaille x:y 0:n Attribut direct Employé n°_secu nom service nom étage x:y Le lien de composition TE-attribut devient un rôle TE-TA, avec les mêmes cardinalités

Transformation d'attribut en TE Attribut indirect nomLabdirecteurchercheurs nomCadressedate_entrée%tempsprojets nomPbudgetdescription lignemontant Laboratoire

Attribut -> TE : 1ère étape nomLabdirecteurchercheurs nomCadressedate_entrée%tempsprojets Laboratoire nomPbudgetdescription lignemontant Projet ?? projets ---> TE => chercheurs ---> TE

Attribut -> TE : 2ème étape Placement des attributs ? nomPbudgetdescription lignemontant nomLabdirecteur nomCadressedate_entrée%temps Laboratoire Projet Chercheur Emploie Travaille ??

Attribut -> TE : 3ème étape nomLabdirecteur nomCadressedate_entrée%temps Laboratoire Chercheur Emploie Chercheur -> nomC, adresse => nomC et adresse sont attributs de Chercheur (Chercheur,Laboratoire) -> date_entrée,%temps => date_entrée et %temps sont attributs de Emploie ?

Attribut -> TE : 3ème étape nomLab directeur nomCadressedate_entrée%temps LaboratoireChercheur Emploie nomP budget lignemontant Projet nomC -> adresse : nomC identifiant de Chercheur Projet -> nomP, budget, description => attributs de Projet nomP -> budget, description description

Attributs -> TE : résultat nomLab directeur nomC adresse date_entrée%temps LaboratoireChercheur Emploie nomP budget lignemontant Projet description Travaille

TE ou TA: reification (TA->TE) nomadresseéchéanceNo-contrat PersonneContrat Souscrit Objet numérotype Voiture 1:1 nomadressenumérotypeéchéanceNo-contrat PersonneVoiture Assure

TA ou attribut nomadressenumérotypeéchéanceN°_contrat PersonneVoiture Assure nomadresse assure échéance N°_contrat voiture Personne numéro type Similaire TE ou attribut

Attribut de TA ou attribut de TE ? nomadresse numérotypeéchéanceNo-contrat PersonneVoiture Assure nomadresse assure échéance No-contrat voiture Personne numéro type assure:attribut->TA nomadressenumérotypeéchéanceNo-contrat PersonneVoiture Assure

TE génériques/spécifiques ou nomadresse sexe Personne nomadresse sexe Personne sexe = F Femme sexe = M Homme

Attributs optionnels ou sous-types ou nomadresse n°tél Personne nomadresse Personne n°tél Communiquant

Conclusion Les transformations de schéma à semantique équivalente (sans perte d'information) sont un outil puissant de flexibilité Elles permettent d'offrir des vues différentes (personnalisées) sur un même contenu informatif Elles permettent de passer d'une structure obéissant à certaines règles à une autre structure équivalente obéissant à d'autres règles (exemple: traduction d'un schéma EA en schéma relationnel)

RECAPITULONS