Vous êtes sur la page 1sur 33

51

Professeur :
51 M. K. MANSOURI
BD - II. Fondement du modèle relationnel
II.1 Modèle EA -Exemple d ’étude de cas : Société d’intérim
Une société d’intérim met à disposition de ses clients des personnels
intérimaires.
Cette mise à disposition se fait par un contrat signé avec le client qui
précise le nombre de journées*hommes par qualification demandée, la
date de début et de fin du contrat et son objet.

Les personnels de la société ainsi mis à disposition sont individuellement


connus (N° matricule, nom, prénom, adresse) et affectés dans les
contrats signés.

Bien que les personnels aient une qualification standard, il peut


arriver que celle-ci soit redéfinie dans le cadre de leur affectation à un
contrat particulier.

52 La facturation est faite au client sur la base d’un tarif journalier propre
à chaque qualification, conformément aux clauses du contrat.
BD - II. Fondement du modèle relationnel
II.1 Modèle EA -Exemple : société d’intérim -Enoncé (suite)

Travail demandé :

A partir des données et règles du cahier des charges, établir :

1. Modèle conceptuel de données - Entité-Association.


2. Modèle Logique de données.

53
BD - II. Fondement du modèle relationnel
II.1 Modèle EA -Exemple : société d’intérim « Solutions »
1. Modèle de données Entité-Association
1.1. En première analyse
Entités candidates à l'existence propre : le contrat, le client, la personne

1.2. Le problème des qualifications :


54
La qualification est un attribut de l'intérimaire. Cependant, il existe une
nomenclature des qualifications. Problème de la redondance.
BD - II. Fondement du modèle relationnel
II.1 Modèle EA -Exemple : société d’intérim « Solutions »
Il faut faire de la qualification une entité, ceci constitue la façon de
pouvoir relier les contrats aux qualifications. La nouvelle version :

55
Reste à voir comment les intérimaires et les qualifications se rapportent
aux contrats.
BD - II. Fondement du modèle relationnel
II.1 Modèle EA -Exemple : société d’intérim « Solutions »
1.3. Les intérimaires dans les contrats :
Un contrat est associé aux personnes, aux clients et aux qualifications.

56
BD - II. Fondement du modèle relationnel
II.1 Modèle EA -Exemple : société d’intérim « Solutions »

Il y a une simplification qui résulte de la Contrainte d ’Intégrité


fonctionnelle entre contrats et clients. Si on sait dans quel contrat
intervient une personne, le client est immédiatement déductible :

Donc la patte intervenir-client est à supprimer.

De même, si on supprime la patte intervenir- qualification, tout


intérimaire intervenant dans un contrat devra y travailler au titre de
sa qualification standard.

Ceci rendra impossible la redéfinition de la qualification lors d'une


affectation à un contrat particulier.
57
Donc, cette patte doit être conservée
BD - II. Fondement du modèle relationnel
II.1 Modèle EA -Exemple : société d’intérim « Solutions »

58
Il ne reste plus que l'histoire du nombre de journées*hommes.
BD - II. Fondement du modèle relationnel
II.1 Modèle EA -Exemple : société d’intérim « Solutions »
1.4. Le nombre de journées*hommes
En première approximation, le nombre de journées*hommes est une
propriété des contrats. Cependant, on caractérise un contrat par la
liste des volumes d'activité pour chaque qualification (Champ
multivalué).

59
BD - II. Fondement du modèle relationnel
II.1 Modèle EA -Exemple : société d’intérim « Solutions »

60
BD - II. Fondement du modèle relationnel

II.1 Modèle EA -Exemple : société d’intérim « Solutions »

L'association intervenir précise pour chaque contrat les


qualifications qu'il utilise.
Une deuxième solution consiste à faire du nombre de
journées*hommes une propriété de l’association intervenir

61
BD - II. Fondement du modèle relationnel
II.1 Modèle EA -Exemple : société d’intérim « Solutions »

Cette solution indique que le nb j.*h. dépende de la personne ce


62 qui est faux. Il faut donc créer une association spécifique et
indépendante entre contrats et qualifications.
BD - II. Fondement du modèle relationnel
II.1 Modèle EA -Exemple : société d’intérim « Solutions »

63
BD - II. Fondement du modèle relationnel
II.1 Modèle EA -Exemple : société d’intérim « Solutions »

1.5. Les factures

Une facture peut être modélisée comme une entité (identifiant : n°


Facture) associée à Contrat avec une cardinalité 1,1 des 2 côtés.

Cependant, il s'agit d'un objet calculable à partir des autres


propriétés du modèle. On dira qu'il s'agit d'une entité "dérivée".

64
BD - II. Fondement du modèle relationnel
II.2 Modèle relationnel - Définition du modèle :
Le modèle relationnel a été formalisé par CODD en 1970. Utilisé par
beaucoup de SGBD commerciaux (Oracle, Informix, DB2, Ingres,
Sybase, dBase, Access …)

C ’est un modèle proche du modèle entité-association 


présentation schématique. Il est basé sur les concepts :

relation, attribut et domaine


Intérêt
- SGBD relationnels = tendance actuelle des réalisations
informatiques
 Langages d'interaction avec la BD tel que SQL

65 - modèle accompagné d’une algèbre relationnelle


 interrogation de la base de données
BD - II. Fondement du modèle relationnel
II.2 Modèle relationnel – Définitions :
Domaine :
un domaine est un ensemble dénombrable de valeurs atomiques
caractérisé par un nom.

Exemple :
- couleurs = {blanc, rouge}
- sortes-de-raisin = {chardonnay, sémillon, pinot,cabernet}
- noms = l’ensemble des noms de personnes

Produit cartésien :
Le produit cartésien d’une liste de domaines D1 ,..., Dn noté
D1 x ... x Dn est l’ensemble des n-uplets ou tuples <v1 ,v2 ,...,vn >
où v1 est une valeur de D1 , v2 est une valeur de D2 , ..., et vn une
66
valeur de Dn .
BD - II. Fondement du modèle relationnel
II.2 Modèle relationnel - Définitions
Exemple Chardonny Blanc
le produit cartésien sortes-de-raisin x couleurs Chardonny Rouge
Sémillon Blanc
est composé des 8 tuples suivants
Sémillon Rouge
Relation (Table) : Pinot Blanc
Pinot Rouge
une relation est un sous-ensemble du produit
Cabernet Blanc
cartésien d’une liste de domaines. Une relation cabernet Rouge
est caractérisée par :

• son nom,
• sa liste de couples <nom d'attribut : domaine>

• son identifiant
67
• la définition de sa sémantique
BD - II. Fondement du modèle relationnel
II.2 Modèle relationnel – Définitions :
Exemple :
Etudiant (N°Etud : Dnum, Nom : Dnom, Prénom : Dnom, Age : Dâge)
Identifiant : N°Etud
Définition : tout étudiant actuellement immatriculé à l ’école

Attribut
Tuple
Etudiant
N° Etud Nom Prénom Age
136 Dupont Jean 19
253 Aubry Annie
101 Duval 22
147 Dupont Marc 21
Attribut :
colonne d’une relation ayant un nom. Rôle joué par un domaine
68
dans la relation.
BD - II. Fondement du modèle relationnel
II.2 Modèle relationnel - Définitions
Schéma d’une base de données relationnelle :
Une base de données contient généralement plusieurs relations.
le schéma d’une base de données relationnelle est constitué :
• d’un ensemble de schémas de relation SR={R 1 ,R 2 ,...,R n }
• d’un ensemble de règles d’intégrité.

Exemple : Schéma relationnel du suivi des enseignements

ELEVE (Num_elv, Num_uv, Nom_elv, Prenom_elv, Adresse_elv,


DatNais_elv)
UNITE_VALEUR (Num_uv, Intitule_val, Niveau_val, NB_val)
69 ENSEIGNANT (Num_ens, Num_uv)
BD - II. Fondement du modèle relationnel
II.2 Modèle relationnel - Règles d'intégrité
Définition :
les règles d’intégrité (R.I.) sont des conditions qui doivent être vérifiées
à tout moment par les données contenues dans la base de données :
• Intégrité de domaine • Intégrité de référence
• Intégrité de relation • Intégrité d’entité

Intégrité De Domaine :
contrôle des valeurs des attributs
• Age [0 .. 130] • Montant > 0
contrôle entre valeurs des attributs
• Date_Début < Date_Fin
• x,y  Personne, (x,y)  mariage  x.état_civil = marié &
70 y.état_civil = marié & x.sexe <> y.sexe
BD - II. Fondement du modèle relationnel
II.2 Modèle relationnel - Règles d'intégrité :
Intégrité de relation (Contrainte De Clé)
Chaque relation doit posséder une clé  Unicité des tuplets
il peut exister plusieurs clés (Clés candidates)  on en choisit une
arbitrairement

Intégrité de référence (Clé étrangère)

Une telle contrainte s’applique sur des relations qui décrivent des
associations.
 Impose que tout tuple d’une relation r qui se réfère à une relation
s doit se référer à un tuple existant dans la relation s.

71
BD - II. Fondement du modèle relationnel
II.2 Modèle relationnel - Règles d'intégrité :
Exemple :
la relation Travail a deux C.R

POLICLINIQUE MEDECIN S
Nom Localité Téléphone NumMatr Nom

TRAVAIL
Nom Localité NumMatr

Intégrité d’entité :
la contrainte d’entité impose que tout attribut faisant partie de
la clé d’une relation soit non nul
72
BD - II. Fondement du modèle relationnel
II.2 Modèle relationnel - Méthode d ’implantation :
 Transformation du modèle E/A :
• transformation des associations n-aires en associations binaires
• entité  relation (Table)
• Identifiant  clé
• association  dépend de sa cardinalité
Règle 1 : Table et clé primaire
Toute entité est transformée en table (relation). Les propriétés de l’entité
deviennent celles de la table. L ’identifiant devient la clé primaire
Entité Entreprise Table Entreprise

73
BD - II. Fondement du modèle relationnel
II.2 Modèle relationnel - Méthode d ’implantation :
Règle 2 : Relation binaire (…,n) - (…,1)
La clé primaire de l ’entité reliée par (…,n) devient clé étrangère de
l’entité reliée par (…,1)

Auteur Livre
N° auteur Ecrire N° livre
Nom
1,n 1,1 Titre

AUTEUR LIVRE
N° AUTEUR N° LIVRE
NOM N° AUTEUR
Ecrire TITRE
74
BD - II. Fondement du modèle relationnel
II.2 Modèle relationnel - Méthode d ’implantation :
Règle 3 : Relation binaire (0,1) - (1,1)
La clé primaire de l’entité reliée par (0,1) devient clé étrangère de l’entité
reliée par (1,1)

Commande Facture
N° commande Impliquer N° facture
Date commande
0,1 1,1 Date facture
Montant Payé ?

FACTURE
COMMANDE
N° FACTURE
N° COMMANDE N° COMMANDE
DATE COMMANDE DATE FACTURE
Impliquer
MONTANT PAYÉ ?
75
BD - II. Fondement du modèle relationnel
II.2 Modèle relationnel - Méthode d ’implantation :
Règle 4 : Relation binaire et ternaire (…,n) - (…,n)
On crée une table supplémentaire ayant comme clé primaire une clé
composée des clés primaires des 2 entités. Lorsque la relation la relation
contient des propriétés celles-ci deviennent attributs de la table.
Commande Article
N° commande Se composer N° article
Date
1,n 0,n Libellé
quantité
Prix unitaire

COMMANDE SE COMPOSER
ARTICLE
N° COMMANDE
N° COMMANDE
N° ARTICLE N° ARTICLE
DATE
LIBELLÉ
QUANTITE
76 PRIX UNITAIRE
BD - II. Fondement du modèle relationnel
II.2 Modèle relationnel - Méthode d ’implantation :
Règle 4 :Relation binaire et ternaire (…,n) - (…,n) (suite)
Enseignant Matière
0,n Enseigner 0,n
N° enseignant N° Matière
Nom Libellé
Prénom
1,n
Classe
N° Classe
Libellé
Cycle
ENSEIGNANT ENSEIGNER MATIÈRE
N° ENSEIGNANT N° ENSEIGNANT N° MATIÈRE
NOM N° MATIÈRE LIBELLÉ
PRÉNOM N° CLASSE

CLASSE
N° CLASSE
77 LIBELLÉ
CYCLE
BD - II. Fondement du modèle relationnel
II.2 Modèle relationnel - Méthode d ’implantation :
Règle 5 : Plusieurs relations entre 2 entités
Les règles générales s ’appliquent

Posséder
Maison
Personne 1,n
0,n N° maison
N° personne Adresse
Nom 1,n Localité
Prénom 1,1 Habiter

POSSÉDER
N° PERSONNE
PERSONNE N° MAISON
N° PERSONNE MAISON
N° MAISON N° MAISON
NOM ADRESSE
78 PRÉNOM LOCALITÉ
BD - II. Fondement du modèle relationnel
II.2 Modèle relationnel - Méthode d ’implantation :
Règles 6 : Relations réflexives
Les règles générales s ’appliquent avec la seule différence que la
relation est 2 fois reliée à la même entité

Société Filiale 0,n

N° société Détenir
Nom
Capital % du capital
Mère
0,n

SOCIÉTÉ DETENIR
Mère
N° SOCIÉTÉ N° SOCIÉTÉ
NOM N° SOCIÉTÉ FILIALE
CAPITAL % DU CAPITAL
79 Filiale
BD - II. Fondement du modèle relationnel
II.2 Modèle relationnel - Méthode d ’implantation :
Relations réflexives (suite)

Module Cours suivants 0,1

N° module Hièrarchie
désignation
prix inscription
Cours précédents
0,n

MODULE
N° MODULE
N° MODULE COURS PRECEDENT
DESIGNATION
Hiérarchie
PRIX INSCRIPTION

80
BD - II. Fondement du modèle relationnel
II.2 Modèle relationnel - Exemple Société d intérim :

2. Le modèle logique de données relationnel

CLIENTS(Codclient, Nom, Prenom, AdRue, AdVille, CodePostal)

CONTRATS(NumeroContrat, Objet, DateSign, Datedeb, Datefin, #CodeCli)

PERSONNES(Matricule, Nom, Prenom, AdRue, Advil, CodePostal,


#CodeQualif)

QUALIFICATIONS(CodeQualif, Libelle, Tarif)

INTERVENIR(#NumContrat, #Matricule, #CodeQualif)

EXIGER(#NumContrat, #CodeQualif, Nbjh)


81
BD - II. Fondement du modèle relationnel
II.2 Modèle relationnel - Exemple Société d intérim :

3. Implantation :

Dans un SGBD relationnel on procède à :


- la création de toutes les tables constituant la base,

- la création des relations entre les tables,

- la remplissage des tables par des données,

- l’exploitation des données de la base.

82
BD - II. Fondement du modèle relationnel
II.2 Modèle relationnel - Exemple Société d intérim :
Implantation

83