cours 9 passage du mcd au mpd le modèle relationnel

24
Cours 9 Passage du MCD au MPD Le modèle relationnel Pierre Delisle Université du Québec à Chicoutimi Département d’informatique et de mathématique

Upload: satinka-herrera

Post on 01-Jan-2016

66 views

Category:

Documents


2 download

DESCRIPTION

Cours 9 Passage du MCD au MPD Le modèle relationnel. Pierre Delisle Université du Québec à Chicoutimi Département d’informatique et de mathématique. Plan. Avant le passage au modèle physique/relationnel Le dictionnaire de données - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Cours 9 Passage du MCD au MPD Le modèle relationnel

Cours 9Passage du MCD au MPD

Le modèle relationnel

Pierre Delisle

Université du Québec à ChicoutimiDépartement d’informatique et de

mathématique

Page 2: Cours 9 Passage du MCD au MPD Le modèle relationnel

2

Plan

Avant le passage au modèle physique/relationnel Le dictionnaire de données

Passage du Modèle Conceptuel des Données (MCD) au Modèle Physique des Données (MPD)

Modèle physique Modèle relationnel formel

Page 3: Cours 9 Passage du MCD au MPD Le modèle relationnel

3

Le dictionnaire de données

Étape suivant la réalisation du MCD Liste des attributs et des caractéristiques de

ces attributs Comprend les informations suivantes

Le nom des attributs Le type des attributs

Texte (préférable pour les clés et les attributs qui ne font pas l’objet de calculs)

Numérique (préférable pour les attributs qui font l’objet de calculs)

Date, Monnaie, etc Description sommaire des attributs Exemple de valeur que peut prendre chaque attribut

Page 4: Cours 9 Passage du MCD au MPD Le modèle relationnel

4

Exemple de dictionnaire de donnéesAttribut Type Description Exemple

NomActeur Texte Nom de l’acteur Brad Pitt

NoIdentification Texte No. d’identification d’un film 123C34

Titre Texte Titre du film Titanic

AnnéeProduction Numérique Année de production du film 1995

Durée Numérique Durée du film (min) 125

Couleur Texte Film en couleur ou noir et blanc Couleur

NoDistributeur Texte Identificateur du distributeur de film W-456

Nom Texte Nom de la compagnie de distribution Warner

Adresse Texte Adresse du distributeur 12 South Drive, New York, USA

Rachat Texte Possibilité de rachat (oui, non) Non

NoSérie Texte No de série d’un exemplaire de film 1154-M-87

DateRetour Date Date de retour de l’exemplaire de film 12/02/2002

NoMembre Texte Identificateur de membre du club GL12321

Nom Texte Nom du membre Jean Girard

Adresse Texte Adresse du membre 34 Begin, Chicoutimi Qc

NoTél Texte No de téléphone du membre (418)545-6754

NoCarteCrédit Texte No de carte de crédit du membre 1234 5654 5676 4456

MontantDepot Monnaie Montant de dépôt initial du client 50,00

NoBon Texte Identificateur du bon de location 1234L-123

DateLocation Date Date de location du bon 10/02/2002

Page 5: Cours 9 Passage du MCD au MPD Le modèle relationnel

5

Le Modèle Physique des Données

L’appellation « modèle physique » de Labbé ne correspond pas à celui d’autres auteurs

Le modèle physique selon Labbé Représentation graphique du modèle relationnel

Le modèle physique selon d’autres auteurs Description précise de l’implémentation sur un

SGBD Modes de stockage, organisation des fichiers,

etc.

Page 6: Cours 9 Passage du MCD au MPD Le modèle relationnel

6

Le Modèle Physique des Données Démarche du cours

Modèle conceptuel Le modèle relationnel Modèle relationnel graphique (Modèle Physique) Modèle relationnel formel

Page 7: Cours 9 Passage du MCD au MPD Le modèle relationnel

7

Le modèle relationnel

Modèle logique basé sur la théorie mathématique des relations

Domaine : Ensemble des valeurs que peut prendre un attribut/colonne Poste : {Gestionnaire, Consultant, Employé} Salaire : [7000, 240000] Peut être simple ou composé

Produit cartésien de 2 ensembles A et B Ensemble de tous les couples dont la première

composante appartient à A et la deuxième à B Produit cartésien de n ensembles

Ensemble de n-uplets, ou tuples

Page 8: Cours 9 Passage du MCD au MPD Le modèle relationnel

8

Le modèle relationnel (suite)

Table : Sous-ensemble du produit cartésien d’une liste de domaines

Cette table représente une occurence de la table personne, représentée en mode extension

Mode formel : PERSONNE (Nom, Prénom, DateNaissance)

Nom Prénom DateNaissance

Tremblay Joseph 1950-03-12

Bouchard Marie 1966-08-23

Girard Johanne 1943-06-30

Nom de la table

PERSONNE

Chaque ligne est un n-uplet, ou tuple, ou enregistrement

Chaque colonne est un attribut ou un champ

Page 9: Cours 9 Passage du MCD au MPD Le modèle relationnel

9

Le modèle relationnel (suite)

2 propriétés des tuples à respecter L’unicité des tuples : il ne peut y avoir de tuples

identiques L’ordre des tuples : l’ordre des tuples n’a pas

d’importance, c’est la même occurrence

3 propriétés des attributs à respecter Indivisibilité : Les données ne sont pas

décomposables Domaine unique : les attributs ne peuvent prendre

n’importe quelle valeur (intervalle, type de données)

Ordre : l’ordre des attributs n’a pas d’importance

Page 10: Cours 9 Passage du MCD au MPD Le modèle relationnel

10

Passage du MCD au MPD – Règle 1 Les entités deviennent des tables L’écriture du nom des tables :

En lettres majuscules, sans espace et sans accent

Contrairement à ce qui est dit dans le livre, ne prenez pas des noms de trois lettres qui ne veulent rien dire

Conseil : Quand le nom de la table dépasse une dizaine de lettres, pensez à l’abréger

Représentation visuelle semblable au MCD

CLIENT

Page 11: Cours 9 Passage du MCD au MPD Le modèle relationnel

11

Passage du MCD au MPD – Règle 2 Les identifiants des entités deviennent

les clés primaires des tables L’écriture du nom des clés primaires (et

des colonnes) Contrairement à ce qui est dit dans le livre,

n’utilisez pas des noms de 3 lettres et ne mettez pas systématiquement le nom de la table à la fin

Premières lettres des mots en majuscules et le reste en minuscules (Exemple : NoClient)

Si vous préférez, vous pouvez utiliser le caractère _ pour écrire un espace (Exemple : No_Client)

Page 12: Cours 9 Passage du MCD au MPD Le modèle relationnel

12

Passage du MCD au MPD – Règle 2 Les clés primaires sont identifiées par

les lettres PK (Primary Key) et elles sont soulignées

Comme l’identifiant, la clé primaire est la première colonne de la table

CLIENT

PK NoClient

Page 13: Cours 9 Passage du MCD au MPD Le modèle relationnel

13

Passage du MCD au MPD – Règle 3 Les attributs des entités deviennent les

colonnes des tables Si ça n’a pas déjà été fait dans le MCD,

pensez à décomposer, si nécessaire, les attributs qui ne sont pas d’un type de base Adresse NoCivique, Rue, Province, Ville,

CodePostal Nom Prénom, Nom

CLIENT

PK NoClient

Prenom Nom NoCivique Rue Province Ville CodePostal

Page 14: Cours 9 Passage du MCD au MPD Le modèle relationnel

14

Parenthèse : Les clés étrangères Une clé étrangère est une clé primaire

provenant d’une autre table En anglais : Foreign Key (FK) Elle permet de faire un lien entre deux

tables Contrainte d’intégrité référentielle : Toute

valeur d’une clé étrangère est égale à la valeur nulle ou à la valeur de la clé primaire à laquelle la clé étrangère se réfère Autrement dit : soit elle est nulle, soit elle prend la

valeur d’une clé primaire déjà existante dans une autre table

Page 15: Cours 9 Passage du MCD au MPD Le modèle relationnel

15

Passage du MCD au MPD – Règle 4 Les relations de type un à un (1:1)

deviennent des clés étrangères

devient

CITOYEN

*NoCitoyenNoAssSocialeNomNoTel

CANDIDAT

*NoCandidatAgeSexe

Est1,1 1,1

1:1

CITOYEN

PK NoCitoyen

NoAssSoc Prenom Nom NoTel

CANDIDAT

PK,FK1 NoCandidat

Age Sexe

Page 16: Cours 9 Passage du MCD au MPD Le modèle relationnel

16

Passage du MCD au MPD – Règle 5 Les relations de type un à plusieurs (1:N)

deviennent des clés étrangères Une des deux tables reçoit, comme clé

étrangère, la clé primaire de l’autre table La table qui contient la clé étrangère est

celle Pour laquelle la clé étrangère ne reçoit qu’une

seule valeur Qui correspond à l’entité dont la cardinalité

maximum est 1 (cardinalité 0, 1 ou 1, 1)

Page 17: Cours 9 Passage du MCD au MPD Le modèle relationnel

17

Passage du MCD au MPD – Règle 5 La pointe de la flèche est dirigée vers la

table qui fournit la clé étrangère à l’autre table

devient

CLIENT

*NoClientPrenomNomNoTel

FACTURE

*NoFactureDate

Recoit1,n 1,1

1:N

CLIENT

PK NoClient

Prenom Nom NoTel

FACTURE

PK NoFacture

DateFK1 NoClient

Page 18: Cours 9 Passage du MCD au MPD Le modèle relationnel

18

Passage du MCD au MPD – Règle 5 Une relation récursive 1:N se traduit par

l’ajout d’une clé étrangère dans la table, correspondant à la clé primaire de cette même table mais portant un nom différent

JOUEUR

*NoJoueurNomPrénomDateNaissance

Est le mentor

0,1

1:N

0,n

Devient

JOUEUR

PK NoJoueur

Nom Prenom DateNaissanceFK1 NoMentor

Page 19: Cours 9 Passage du MCD au MPD Le modèle relationnel

19

Passage du MCD au MPD – Règle 6 Les relations de type plusieurs à plusieurs

(N:M) deviennent des tables supplémentaires Le nom de cette nouvelle table peut être la

combinaison des noms des deux tables d’origine CLIENT achète PRODUIT PROD_CLIENT Si possible, trouver un nom plus représentatif

PROD_ACHETE La clé primaire d’une table supplémentaire est

composée des clés primaires de chacune des tables à l’origine de la relation

Les attributs de la relation deviennent des colonnes de la nouvelle table

Page 20: Cours 9 Passage du MCD au MPD Le modèle relationnel

20

Passage du MCD au MPD – Règle 6

ÉTUDIANT

*CodePermanentNomPrénom

COURS

*NoCoursDescription

Suit

NoteNbAbsences

N:M

1,n1,n

ETUDIANT

PK CodePerm

Nom Prenom

COURS

PK NoCours

Description

COURS_SUIVI

PK,FK1 CodePermPK,FK2 NoCours

Note NbAbsences

Devient

Page 21: Cours 9 Passage du MCD au MPD Le modèle relationnel

21

Passage du MCD au MPD – Règle 6 Parfois, la combinaison des deux clés

n’est pas suffisante, il faut alors ajouter autant d’attributs que nécessaire dans la clé pour rendre la clé unique

devient

EQUIPE

PK NoEquipe

Nom

JOUEUR

PK NoJoueur

Nom Prenom

CONTRAT

PK,FK1 NoEquipePK,FK2 NoJoueurPK DateDebut

DateFin

EQUIPE

*NoEquipeNom

JOUEUR

*NoJoueurNomPrenom

Joue

DateDebutDateFin

N:M

1,n1,n

Page 22: Cours 9 Passage du MCD au MPD Le modèle relationnel

22

Passage du MCD au MPD – Règle 6 Pour les relations n-naires, le principe

est le même que pour la relation binaire La clé primaire de la nouvelle table n’a pas être

composée de toutes les tables de la relation n-naire

Si les clés primaires de la relation forte sont suffisantes pour identifier la table de façon unique, les autres clés se limitent à être des clés étrangèresÉTUDIANT

*CodePermanentNomPrénom

COURS

*NoCoursDescription

Suit

NoteNbAbsences

N:M

1,n1,n

PROFESSEUR

*NoProfesseurNomPrenom

1,n

Devient

ETUDIANT

PK CodePerm

Nom Prenom

COURS

PK NoCours

Description

COURS_SUIVI

PK,FK1 CodePermPK,FK2 NoCours

Note NbAbsencesFK3 NoProfesseur

PROFESSEUR

PK NoProfesseur

Nom Prenom

Page 23: Cours 9 Passage du MCD au MPD Le modèle relationnel

23

Le modèle relationnel formel

La représentation standard d’une base de données relationnelle est le mode formel :

FILM(NoIdentification, NoDistributeur, Titre, AnnéeProduction, Durée, Couleur, Producteur, Réalisateur, Genre)

ACTEUR-FILM(NomActeur, NoIdentification) DISTRIBUTEUR(NoDistributeur, Nom, Adresse, Rachat) CASSETTE(NoSérie, NoIdentification, Format) CASSETTE-LOUÉE(NoSérie, NoBon, DateRetour) BON-LOCATION(NoBon, NoClient, DateLocation) CLIENT(NoMembre, Nom, Adresse, NoTél, NoCarteCrédit, MontantDépôt)

Une dernière étape avant l’implémentation permettra d’optimiser la base de données : la normalisation (semaine prochaine)

Page 24: Cours 9 Passage du MCD au MPD Le modèle relationnel

24

Des questions ?