Vous êtes sur la page 1sur 19

Fondements des Bases de données

1ère Année SI

Chapitre 3
Règles de transformations d’un modèle EA au
modèle Relationnel
Adapté de Elmasri & Navathe

Samir BOUCETTA
Samir.Boucetta@issatm.ucar.tn
2eme Semestre 2022/2023
Chapitre 3
Transformations EA-au-Relationnel
1- Les Concepts du modèle Relationnel

2- Les Contraintes d’intégrité Relationnelles

3- Algorithme de Transformation ER-au-Relationnel


Etape 1: Transformation des Entités-Types Normales
Etape 2: Transformation des Entités-Types Faibles
Etape 3: Transformation des Relations-Types Binaires 1:N.
Etape 4: Transformation des Relations-Types Binaires 1:1
Etape 5: Transformation des Relations-Types Binaires M:N.
Etape 6: Transformation des attributs Multivalués.
Etape 7: Transformation des Relations-Types N-aires.
Chapitre 3 – Transformations EA-à-Relationnel – Adapté de Elmasri/Navathe par Samir BOUCETTA 2
1-/ Concepts du modèle Relationnel

 Une Relation est un concept mathématique basé sur


l’idée d’ensembles.

 La robustesse de l’approche relationnelle pour la

gestion des données provient du fondement formel de

la théorie des relations.

 Le modèle a été propose par Dr Ted Codd de la société


IBM en1970.
Chapitre 3 – Transformations EA-à-Relationnel – Adapté de Elmasri/Navathe par Samir BOUCETTA 3
1-a/ DEFINITIONS INFORMELLES

 RELATION: Une table de valeurs


– Une relation peut être considérée comme un ensemble de lignes.
– Alternativement, une relation peut être considérée comme un
ensemble de colonnes.
– Chaque ligne représente un fait qui correspond à une entité du
monde-réel ou association.
– Chaque ligne a une valeur d’un attribut ou ensemble d’attributs
qui identifie de manière unique une ligne dans la table.
– Parfois, des identificateurs de ligne ou numéros séquentiels sont
attribués pour identifier les lignes dans la table.
– Chaque colonne est identifiée par le nom de la colonne ou le
nom de l’attribut.

Chapitre 3 – Transformations EA-à-Relationnel – Adapté de Elmasri/Navathe par Samir BOUCETTA 4


1-b/ DEFINITIONS FORMELLES

 Soit R (A1, A2, .....An) le Schéma d’une Relation:.


Ce schéma R est définie par les attributs A1, A2, .....An
Par Exemple - CLIENT (IdCient, Nom_Client, cAdresse, cNumTel)
 Un tuple est un ensemble de valeurs ordonnées
 Chaque valeur est dérivée d’un domaine approprié.
 Chaque ligne dans la table CLIENT se réfère à un tuple dans la
table et consisterait de quatre valeurs.
 <632895, “Ahmad Amine", “15, Omar Ibn El-Khattab, Mateur", “51234567">
est un tuple appartenant à la relation CLIENT.
 Une relation peut être considérée comme un ensemble de tuples
(lignes).
 Les Colonnes d’une table sont appelés aussi attributs de la relation.
Chapitre 3 – Transformations EA-à-Relationnel – Adapté de Elmasri/Navathe par Samir BOUCETTA 5
Sommaire des Termes utiles
Termes Informels Termes Formels

Table Relation
Colonne Attribut
Ligne Tuple
Valeurs possibles Domaine
d’une colonne
Définition d’une Table Schéma d’une Relation
Table remplie Extension

Chapitre 3 – Transformations EA-à-Relationnel – Adapté de Elmasri/Navathe par Samir BOUCETTA 6


2-/ Contraintes d’intégrité relationnelles

 Les Contraintes sont des conditions qui doivent être


vraies pour tous les tuples valides. Il y a trois
principaux types de contraintes:

1. Contrainte de Clé

2. Contrainte d’intégrité d’entité

3. Contrainte d’intégrité Référentielle

Chapitre 3 – Transformations EA-à-Relationnel – Adapté de Elmasri/Navathe par Samir BOUCETTA 7


2-a/ Contrainte de Clé

 Clé Candidate de R: Un ensemble minimal d’attributs

qui identifient de manière unique chaque tuple dans la

relation.

 Clé Primaire of R: Une clé candidate qui est choisie

pour identifier chaque tuple dans la relation.

Les attributs de la clé primaire sont soulignés.

Chapitre 3 – Transformations EA-à-Relationnel – Adapté de Elmasri/Navathe par Samir BOUCETTA 8


2-b/ Contrainte d’intégrité d’entité
 Schéma (S) d’une Base de Données Relationnelle : S est un
ensemble de relations qui appartiennent à la même base de
données. S est le nom de la base de données.
S = {R1, R2, ..., Rn}
 Intégrité d’entités : Les attributs de la clé primaire de chaque
relation R dans S ne peuvent pas avoir de valeurs nulles dans
aucun des tuples de R.
 N.B.: D’autres attributs de R peuvent être contrains à ne pas avoir
de valeurs nulles, même s’ils ne sont pas membres de la clé
primaire.

Chapitre 3 – Transformations EA-à-Relationnel – Adapté de Elmasri/Navathe par Samir BOUCETTA 9


2-c/ Contrainte d’intégrité référentielle

 C’est une contrainte impliquant deux relations (les contraintes


précédentes impliquent une seule relation).

 Utilisée pour spécifier une relation entre tuples dans deux relations: la
relation de référencement et la relation référencée.

 Les tuples dans la relation de référencement R1 ont des attributs de clé


étrangère CE faisant référence aux attributs de clé primaire CP de la
relation référencée R2.

Un tuple t1 dans R1 référence un tuple t2 dans R2 si t1[CE] = t2[CP].

Chapitre 3 – Transformations EA-à-Relationnel – Adapté de Elmasri/Navathe par Samir BOUCETTA 10


Algorithme de Transformation ER-au-Relationnel

Etape 1: Transformation des Entités-Types Ordinaires.

Pour chaque entité-type ordinaire E du modèle ER, créer une


relation R qui inclus tous les attributs simples de E.
 Choisir l’un des attributs-clé de E comme clé primaire de R. Si
la clé choisie de E est composite, l’ensemble des attributs
simples qui la composent vont constituer la clé primaire de R.

N.B. Les entités-types traitées dans cette étapes sont considérées


comme "Forte" par opposition aux entités-types faibles qu’on
traitera dans la diapositive suivante.

Chapitre 3 – Transformations EA-à-Relationnel – Adapté de Elmasri/Navathe par Samir BOUCETTA 11


Algorithme de Transformation ER-au-Relationnel

Etape 2: Transformation des Entités-Types Faibles

 Pour chaque entité-type faible W du modèle ER ayant E comme


entité propriétaire, créer une relation R qui inclus tous les attributs
simples de W.
 La clé primaire de R est la combinaison de la clé primaire de
l’entité propriétaire E et la clé partielle de l’entité-type faible W,
s’il y a lieu.
 De plus, inclure comme clé étrangère dans R la clé primaire de
l’entité propriétaire E.
Chapitre 3 – Transformations EA-à-Relationnel – Adapté de Elmasri/Navathe par Samir BOUCETTA 12
Algorithme de Transformation ER-au-Relationnel

Etape 3: Transformation des Associations-Types Binaires 1:N


 Dans ce cas, nous sommes en présence d’une relation Père-fils
L’entité père existe du cote 1 de l’association.
L’entité fils existe du cote N de l’association.
 L’entité fils doit avoir une clé étrangère vers l’entité père.
 Inclure tout attribut simple de l’association comme attribut de
l’entité fils.
Exemple: TRAVAILLER_POUR, CONTROLER et SUPERVISER sont des
associations de type 1:N. Pour l’association TRAVAILLER_POUR nous
incluons la clé primaire DNUMBER de a relation DEPARTEMENT
comme clé étrangère dans l’association EMPLOYEE; nous l’appelons
DNO.
Chapitre 3 – Transformations EA-à-Relationnel – Adapté de Elmasri/Navathe par Samir BOUCETTA 13
Algorithme de Transformation ER-au-Relationnel

Etape 4: Transformation des Associations-Types Binaires 1:1

Il y a trois cas différents:


Cas 1- La relation est du type (1,1) - (1,1)
 Les deux entités peuvent être fusionnées dans une seule
relation.

Cas 2- La relation est du type (0,1) - (1,1)


 Ce cas peut être considéré comme une relation Père-fils.
L’entité fils doit avoir une clé étrangère vers l’entité père.

Chapitre 3 – Transformations EA-à-Relationnel – Adapté de Elmasri/Navathe par Samir BOUCETTA 14


Algorithme de Transformation ER-au-Relationnel

Etape 4: Transformation des Relations-Types Binaires 1:1

Cas 3- La relation est du type (0,1) - (0,1)


 La fusion des deux entités ou l’ajout de clé étrangère dans
l’une ou les deux entités est laissé à l’initiative du concepteur.

Chapitre 3 – Transformations EA-à-Relationnel – Adapté de Elmasri/Navathe par Samir BOUCETTA 15


Algorithme de Transformation ER-au-Relationnel

Etape 5: Transformation des Relations-Types Binaires M:N.


 Créer une nouvelle relation S pour représenter la relation M:N.
 Inclure comme clés étrangères dans S les clés primaires des
relations qui représentent les entités participantes; leur
combinaison va former la clé primaire de S.
 Inclure aussi tout attribut simple de la relation M:N comme
attributs de S.
Exemple: La relation-type M:N TRAVAILLER_SUR du diagramme ER est transformée en
une nouvelle relation TRAV_SUR dans le schéma relationnel de la base de données. Les clés
primaires des relations PROJET et EMPLOYE sont incluses comme clés étrangères dans
TRAV_SUR et renommées PNO et ESSN, respectivement. L’attribut Heures de la relation-
type TRAVAILLER_SUR est ajouté comme attribut de la relation TRAV_SUR. La clé
primaire de la relation TRAV_SUR est la combinaison des attributs {ESSN, PNO}.

Chapitre 3 – Transformations EA-à-Relationnel – Adapté de Elmasri/Navathe par Samir BOUCETTA 16


Algorithme de Transformation ER-au-Relationnel

Etape 6: Transformation des attributs Multivalués.

 Créer une nouvelle relation R pour chaque attribut multivalué A.


 La relation R va inclure :

– un attribut correspondant à A. Si l’attribut multivalué est


composite, nous incluons ses composantes simples.
– Une clé étrangère FK correspondant à la clé primaire PK de la
relation qui a A comme attribut.
– La clé primaire de R est la combinaison de FK et A.

Exemple: Les localisations de departement.


Chapitre 3 – Transformations EA-à-Relationnel – Adapté de Elmasri/Navathe par Samir BOUCETTA 17
Algorithme de Transformation ER-au-Relationnel

Etape 7: Transformation des Relations-Types N-aires.

– Pour chaque relation n-aire R, où n>2, créer une nouvelle relation


S pour représenter R.
– Inclure comme clé étrangère dans S les clés primaires des
relations qui représentent les entités participantes. Leur
combinaison est la clé primaire.
– Inclure aussi tout attribut simple de la relation n-aire (ou les
composants simples des attributs composés) comme attributs de S.

Exemple: La relation-type SUPPLY (Approvisionner) du modèle ER ci-dessous.


Chapitre 3 – Transformations EA-à-Relationnel – Adapté de Elmasri/Navathe par Samir BOUCETTA 18
Algorithme de Transformation ER-au-Relationnel

Chapitre 3 – Transformations EA-à-Relationnel – Adapté de Elmasri/Navathe par Samir BOUCETTA 19

Vous aimerez peut-être aussi