1 / 29

Conversion relationnelle

Conversion relationnelle. yves.pigneur@hec.unil.ch gabor.maksay@eivd.ch. Référence. Bases de données et modèles de calcul, Outils et méthodes pour l'utilisateur, Jean-Luc Hainault , Dunod, 3ème édition, 2002 Chapitre 9, pp. 241-247. Agenda. Conversion des Types d’Entités Attributs

coen
Download Presentation

Conversion relationnelle

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Conversion relationnelle yves.pigneur@hec.unil.ch gabor.maksay@eivd.ch

  2. Référence • Bases de données et modèles de calcul, Outils et méthodes pour l'utilisateur, Jean-Luc Hainault, Dunod, 3ème édition, 2002 • Chapitre 9, pp. 241-247 2

  3. Agenda Conversion des • Types d’Entités • Attributs • Types d’Associations • Identifiants 3

  4. Type d’Entité & attribut • Type d’Entité -> Table • même nom • attribut -> colonne • même nom • type et longueur • obligatoire ou facultative 4

  5. Type d’associationun-à-plusieurs • soit R un Type d’association un-à-plusieurs entre A et B • IA identifiant de A on représente R par: • nouvelle(s) colonne(s) IA’ dans B, • de même type que IA, • clé étrangère de B vers A • obligatoire ou facultative 5

  6. Type d’associationun-à-plusieurs DEPARTEMENT Nom Adresse EMPLOYE Matricule Nom Fonction DpmtNom 6

  7. Type d’associationun-à-plusieurs DB-Main 7

  8. Type d’associationun-à-un • soit R un Type d’association un-à-un entre A et B on représente R par: • une nouvelle clé étrangère dans A (vers B) ou par: • une nouvelle clé étrangère dans B (vers A) celle-ci est un nouvel identifiant pour la table 8

  9. Type d’associationun-à-un DEPARTEMENT Nom Adresse Directeur EMPLOYE Matricule Nom Fonction 9

  10. Type d’associationun-à-un DB-Main 10

  11. Type d’associationplusieurs-à-plusieurs • soit R un Type d’association plusieurs-à-plusieurs entre A et B on représente R par: • un nouveau Type d’entité • deux Types d’associations 11

  12. Type d’associationplusieurs-à-plusieurs T.A. -> T.E. 12

  13. Type d’associationplusieurs-à-plusieurs T.E.1-1 -> rel. id: CLIENT, PRODUIT 13

  14. Type d’association plusieurs-à-plusieurs CLIENT PRODUIT Quantité No Nom Adresse No Libellé ACHAT ClientNo ProduitNo 14

  15. Type d’association plusieurs-à-plusieurs DB-Main 15

  16. Association ternaire Extension 16

  17. Identifiants • attribut(s) • colonne(s) • attribut(s) et Type(s) Entités • colonne(s) • clé(s) étrangère(s) 17

  18. Identifiant hybride DIRECTION Nom Président DEPARTEMENT Nom DirNom Directeur 18

  19. Identifiant hybride DB-Main 19

  20. Exemple - EA (I) 20

  21. Exemple -relation (I) PRODUIT NO LIBELLE PRIX QSTOCK CLIENT NO NOM ADRESSE LOCALITE (CAT) COMPTE COMMANDE NO CLINO DATE LIGNECOM CLNO PRNO QCOM 21

  22. Exemple -relation (I) DB-Main 22

  23. Exemple - EA (II) 23

  24. Exemple - relation (II) DB-Main CLIENT No Nom Adresse CONTRAT VEHICULE CliNo No Type Date No ... CrtNo CliNo CrtCliNo ACCIDENT No Date (Montant) CONCERNE VehNo AccNo 24

  25. Exemple - relation (II) 25

  26. Exemple - SQL (II) CREATE TABLE Client ( No CHAR (12) NOT NULL, Nom CHAR (38) NOT NULL, Adresse CHAR (60) NOT NULL, PRIMARY KEY (No)) CREATE TABLE CONTRAT ( ClientNo CHAR (12) NOT NULL, No CHAR (8) NOT NULL, Type DECIMAL (4) NOT NULL, Date DATE NOT NULL PRIMARY KEY (ClientNo, No) FOREIGN KEY (ClientNo) REFERENCES CLIENT) 26

  27. Exemple - SQL (II) CREATE TABLE VEHICULE ( No CHAR (16) NOT NULL, Marque CHAR (30) NOT NULL, Modele CHAR (30) NOT NULL, Annee decimal (4) NOT NULL, Cylindree decimal (6) NOT NULL, ClientNo CHAR (12) NOT NULL, ContratClientNo CHAR (12) NOT NULL, ContratNo DECIMAL (8) NOT NULL, PRIMARY KEY (No), UNIQUE(ContratClientNo, ContratNo), FOREIGN KEY (ClientNo) REFERENCES CLIENT, FOREIGN KEY (ContratClientNo, ContratNo) REFERENCES CONTRAT) 27

  28. Exemple - SQL (II) CREATE TABLE ACCIDENT ( No CHAR (10) NOT NULL, Date DATE NOT NULL, Montant DECIMAL (6), PRIMARY KEY (No)) CREATE TABLE SURVENANCE ( VehiculeNo CHAR (16) NOT NULL, AccidentNo CHAR (10) NOT NULL, PRIMARY KEY (VehiculeNo, AccidentNo), FOREIGN KEY (VehiculeNo) REFERENCES VEHICULE, FOREIGN KEY (AccidentNo) REFERENCES ACCIDENT) 28

  29. Merci pour votre attention ! 29

More Related