C2 BD M1

C2 BD M1

ntroduction Traduction IJML vers SQL Bases de Données C2. UML et SQL 2/3 Lina Soualmia Université de Rouen ITIS – Équipe TIBS-CISMeF lina. [email protected] fr 13 septembre 2013 1 / 89 2 p g Plan Introduction Partie 1 : de IJMLà SQL2 (du conceptuel au relationnel étendu – objet-relationnel) partie 2 : de à SQL3 (du conceptuel à Forienté objet) Conclusion Formalismes Différents formalismes de modélisation de schémas conceptuels de BD : Formalisme EA ER, EER Modèle Entité-Association (Entity-Relationship Model) Modèle Entité-Association Etendu Extended Entity-Relationship Model

Formalisme LIML (Unified Modelling Language) 8/ 89 Conception, Développement, Utilisation, Administration Mécanismes d’abstraction Traduction de EA vers SQL Modèle Entité-Association Entité : tout concept concret ou abstrait individualisable Classe ou type d’entités : regroupement d’entités d e (niveau Classification Regroupement d’entités dans des classes en fonction de propriétés communes Possibilité de classer un objet dans plusieurs classes Exemples : Livre électronique : fichier électronique, et livre Autocar : véhicule de transport en commun, véhicule ? moteur à explosion 2/ 89 Traduction vers SQL Héritage Spécialisation – Généralisation Un type d’entité A est une spécialisation d’un autre type d’entité chaque entité de A est une entité de B une seule entité (au plus) de B est associée

Désolé, mais les essais complets ne sont disponibles que pour les utilisateurs enregistrés

Choisissez un plan d'adhésion
à une entité de A 22 Objet Classe Propriété Rôle Méthode Contrainte de domaine Contrainte de clé Contrainte Multiplicité/Cardinalité Diagramme de Classe UML Domaine Cardinalité (0,1) (1 (O,n) (1 (a,b) (ara) Diagramme E/A 17/89 Objectifs Implantation d’un schéma conce tuel (SCD) dans une 3D relationnelle 4 22 Transformation des associations d’héritage multiple

Traduction des associations binaires Traduction des associations binaires récursives Traduction des associations n-aires (n > 2) Traduction des associations d’héritage Traduction des contraintes d’héritage Traduction des associations d’agrégation Traduction des contraintes d’intégrité fonctionnelles (contraintes : Partition, Exclusion, Totalité, Simultanéité, Inclusion) 22 / 89 Intégrité des données Transformation des associations dhéritage multiple Intégrité des Données es SGBD prennent en compte l’intégrité des données définies la déclaration de contraintes (constraint) la programmation de 2 Association 1-1 (1) Un stage est effectué par au plus 1 étudiant create table STAGE (NumStage NIJMBER(2), NomEntreprise VARCHAR(40), TelEntreprise VARCHAR(1 5), AdrEntreprjse VARCHAR(50), constraint PKStage primary key (NumStage)); 25 / 89 Traduction IJMI_ vers SQL ntégrité des données Association 1-1 (2) un étudiant effectue obligatoirement un stage unique create table ETUDIANT (NumEtudiant NUMBER(7), NomEtudiant VARCHAR(I O), DateNaissance DATE, Genre CHAR (1), Numstage NUMBER(7), constraint PKEtudiant primary key (NumEtudiant), constraint FKEtudiantNumSta esta e foreign key (Numstage)references ST 22 associations binaires Association de type 1-N (2) une voiture appartient obligatoirement à une personne create table VOITURE (Nurrllmrnat VARCHAR(15), Marque VARCHAR(20), Type VARCHAR(30), NumPersonne NUMBER(7), constraint PKVoiture primary key (Numlmmat), constraint FKVoitureNumPersonnePersonne foreign key (Numpersonne) references PERSONNE(NumPersonne), constraint NNVoitureNumePersonne check (NumPersonne is NOT NULL); 29 / 89 30 / 89 des associations dhérltage create table CREER (Numpersonne NUMBER(7), NumSiret VARCHAR(10), DateCreation DATE, constraint PKPersonne primary key (NumPersonne,

NumSiret), constraint FKCreerNumPersonnePersonne foreign key (NumPersonne) references PERSONNE(NumPersonne), constraint FKCreerNumiretSiret foreign key (NumSlret) references ENTREPRISE(NumSiret)); Associaton de type N-N (3) La cardinalité minimale de l’association créée pourra être testée par une procédure PL/SQ 33 / 89 Association du type Réflexif/Récursif associations d’héritage create table PRODUITS (Numproduit NU MBER(3), Nomproduit VARCHAR(1 5), QuStocke NUMBER(5), constraint PKProduits primary key NumProduit, constraint CKProdu•tsQuStock check (QuStock>=O)); 37 / 89 reate table NOMENCLATURE (Composer NIJMBER(3), Composant NUMBER(3), Qup-abrication NUMBER(5), constraint PKNomenclature primary key (Composer,Composant), constraint FKNomenclatureComposerProduits fore’gn key (composer) references PRODUITS, constraint CKNomenclatureQuFabrication check d’instances dans une population donnée Modélisation des différents héritages, dans le formalisme UML, à l’aide de contraintes partition totalité exclusion absence de contrainte 41 / 89 Contraintes d’héritage : Partition et Totalité Disjonction ET Couverture Partition Non-Disjonction ET Couverture Totalité 0 2