Académique Documents
Professionnel Documents
Culture Documents
d'information
Année :2022/2023
Pr. : K. TAIFI
26 février 2023 26 février 2023 1 / 58
Plan
Plan
Le modèle relationnel
Concepts de base
Domaine
Dénition
Un domaine est un ensemble de valeurs atomique (il ne contient qu'une
seule valeur) d'un certain type sémantique.
Exemples :
NOM_SPORT = (judo, tennis, foot )
NOM_VILLE = ( Errahidia, Rabat, Casa )
Des domaines sont les ensembles de valeurs possibles dans lesquels sont
puisées les données.
Deux ensembles peuvent avoir les mémes valeurs bien que sémantiquement
distincts.
Exemples :
NUM_ELV= (1, 2,..., 2000)
NUM_ANNEE=(1, 2,..., 2000)
Produit cartésien
Dénition
Le produit cartésien D1 Ö D2 Ö ... Ö Dn est l'ensemble des tuples
(n-uplets) ;
Exemples :
D1={1,2}, D2={A,B}
Produit cartésien de D1 et D2 est :
D1ÖD2={(1,A),(1,B),(2,A),(2,B)}
Relation
Dénition
Une relation est un sous ensemble nommé du produit cartésien d'une liste
de domaine (plusieurs domaines).
Sous ensemble du produit cartésien de plusieurs domaines :
R ⊂ D1 Ö D2 Ö ... Ö Dn
D1, D2, ... , Dn sont les domaines de R avec n est le degré de R
Exemple :
Les domaines :
NOM_ELV ={TAIFI, SEBNAT}
PRENOM_ELV={fatima, adil}
NOM_SPORT = (judo, tennis, foot )
La relation ELEVE
ELEVE ⊂ NOM_ELV Ö PRENOM_ELV Ö NOM_SPORT
NOM_ELV Ö PRENOM_ELV Ö NOM_SPORT {(TAIFI,fatima, judo),
(SEBNAT,adil, judo),... }
ELEVE ={(TAIFI,fatima, judo), (SEBNAT,adil,foot)}
Pr. : K. TAIFI 26 février 2023 8 / 58
Chapitre 3 : Modèle relationnel Concepts de base
Relation
Dénition 2
Une relation est représentée sous la forme d'un tableau à deux dimensions
dans lequel les n attributs correspondent aux titres des n colonnes et les
lignes les données appelées les tuples (N-uplet ou occurences,
enregistrement,instance de la relation).
Toute relation a un nom unique
Le tableau suivant montre un exemple de relation et précise son schéma.
n-uplet
Dénition
n_uplet (tuple) est un enregistrement (ou une ligne) dans une relation (ou
une table).
Formé d'un ensemble de valeurs associées aux attributs
Exemple :
(idriss est un élève né le 1/1/1992 )
(nom,datenaiss)
Attribut
Dénition
Un attribut est une représentation d'une propriété d'une relation.
Chaque composante d'une relation est un attribut
Le nom donné à un attribut est porteur de sens
Plusieurs attributs peuvent avoir le même domaine
Exemple :
La relation TRAJET :
TRAJET ⊂ NOM_VILLE Ö NOM_VILLE
Dans laquelle la première composante représente la ville de départ VD, la
deuxième composante la ville d'arrivée VA d'un trajet.
Dénition
Degré d'une relation : C'est le nombre des attributs dans une relation
Cardinalié d'une relation : C'est le nombre de ses occurences
Exemple :
Degré d'une relation Commande= 3
Cardinalié d'une relation=4
Clé primaire
Dénition
Une clé primaire d'une relation est un sous-ensemble minimal d'attributs
permettant d'identier de manière unique un tuple parmi tous les tuples de
la relation. Les attributs qui forment la clé primaire sont soulignés.
Une clé détermine un n-uplet de façon unique
Pour trouver la clé d'une relation, il faut examiner attentivement les
hypothèses sur le monde réel
Une relation peut posséder plusieurs clés, on les appelle clés candidates
Dans une relation, la valeur de la clé dans un tuple doit être connue
(elle ne peut pas être une valeur null) appelle clés candidates
Toute relation doit comporter une clé primaire
Exemple :
Quelle est la clé dans la relation Produit(Code_prod , nom_prod, prix)
Code_prod (nom_prod, prix)
Code_prod est une clé
Clé étrangère
Clé étrangère
Une clé étrangère dans une relation est formée d'un ou plusieurs attributs
qui constituent une clé primaire dans une autre relation. Un attribut clé
étrangère est précédé du symbole dièse
Attention : Seule une clé primaire peut être référencée par une clé étrangère
Pour chaque relation, son nom suivi de la liste de ses attributs entre
des parenthèses ;
Souligner les clés primaires ;
Placer si possible les attributs faisant partie de la clé primaire en
premier ;
Chaque clé étrangère est précédée du symbole dièse ;
Placer si possible les attributs clé étrangère vers la n ;
Indiquer quel attribut de quelle relation est référencé par
Dépendance fonctionnelles
Dépendance fonctionnelles
Dénition
Soit R(A1, A2, ...., An) un schéma de relation
Soit X et Y des sous ensembles de (A1,A2,...An) On dit que Y dépend
fonctionnellement de X (X->Y) si à chaque valeur de X correspond une
valeur unique de Y
On écrit : X Y
On dit que : X détermine Y
Exemple :
personne (CIN, nom, prénom)
CIN (nom, prénom)
Dépendance fonctionnelle (DF) peut porter sur la concaténation de
plusieurs attributs
NOTE (no_contrôle, no_élève, note)
(no_contrôle, no_élève) note
La réciproque est fausse
Une clé détermine un n-uplet de façon unique
Pr. : K. TAIFI 26 février 2023 22 / 58
Chapitre 3 : Modèle relationnel Dépendance fonctionnelles
D.F. élémentaire
Dénition 2
D.F. X -> A mais A est un attribut unique non inclus dans X et il n'existe
pas de X' inclus dans X tel que X' -> A
Exemple D.F. élémentaire :
(no_contrôle, no_élève) note
D.F. directe
Dénition
on dit qu'il y'a D.F directe, si :
AB et s'il n'existe pas de propriété C telle que :
AC et CB (on élémine toute la transitivité)
Exemple
no_commande no_client (directe)
no_clientnom_client (directe)
no_commande nom_client (indirecte)
Exercice d'application1
Rappel énoncé : On a les données suivantes sur des élèves avec le DFs :
Matricule Nom, Age
Matricule Club
Club Salle
1. Que signie chaque DFs ?
2. Trouver la clé de la relation
Exercice d'application2
Formes normales
Normalisation
Formes normales
Id Nom Salaire
3 Bernard,Alain 9000
5 Labbé,Charles 6000
8 Barrete,Patricia 12000
9 Cadieux,Violette 8000
Exercice d'application 3
Une clé
Une clé est un attribut(champ ou colonne) ou un ensemble d'attributs qui
déterminent les autres attributs de la relation(la table)
NumCom est la clé ? est ce que NumCom détermine tous les autres
attributs de la relation :
d'aprés les dépendances fonctionnelles
NumCom DateCom (oui)
NumCom NumCli (oui)
NumCom AdrCli (oui)
NumCom NumProd (non)
NumCom Prix (non)
NumCom Qte (non)
alors NumCom ne détermine pas tous les attributs de la relation alors
NumCom pas la clé de la relation
Pr. : K. TAIFI 26 février 2023 40 / 58
Chapitre 3 : Modèle relationnel Formes normales
NumCli est la clé ? est ce que NumCli détermine tous les autres attributs
de la relation :
d'aprés les dépendances fonctionnelles
NumCli DateCom (non)
NumCli NumCom(non)
NumCli AdrCli (oui)
NumCli NumProd (non)
NumCli Prix (non)
NumCli Qte (non)
alors NumCli ne détermine pas tous les attributs de la relation alors NumCli
pas la clé de la relation
NumProd est la clé ? est ce que NumProd détermine tous les autres
attributs de la relation :
d'aprés les dépendances fonctionnelles
NumProd DateCom (non)
NumProd NumCom(non)
NumProd AdrCli (non)
NumProd NumCli (non)
NumProd Prix (oui)
NumProd Qte (non)
alors NumProd ne détermine pas tous les attributs de la relation alors
NumProd pas la clé de la relation
Passage en 2FN
Règles d'intégrité
Règles d'intégrité
Les régles d'intégrité sont les assertions qui doivent être vériées par les
données contenues dans une base
Le modèle relationnel impose les contraintes structurelles suivantes :
Intégrité de domaine
Intégrité de clé
Intégrité référencielle
La gestion automatique des contraintes d'intégrité est l'un des outils les
plus importants d'une base de données.
Règles d'intégrité
Intégrité de domaine
Les valeurs d'une colonne de relation doivent appartenir au domaine
correspondant :
Contrôle des valeurs des attributs
Contrôle entre valeurs des attributs
Règles d'intégrité
Intégrité de clé
Les valeurs de clés primaires doivent être :
Unique : dans toute extension possible d'une relation, il ne peut exister
2 n-uplets ayant même valeur pour les attributs clés.
Non null : valeur conventionnelle pour représenter une information
inconnue.
Règles d'intégrité
Intégrité référencielle
Les valeurs de clés étrangères sont 'NULL' ou sont des valeurs de la clé
primaire auxquelles elles font référence.
Les contraintes de référence ont un impact important pour les opérations
de mises à jour, elle permettent d'éviter les anomalies de mises à jours,
exemple :
Commade(noCommande, DateCommade,noClient)
Client(noClient,nombreCommande)
Règles d'intégrité
IdPro de Vente est une clé étrangère qui fait référence à la clé primaire
de Produit
Appliquer l'intégrité référentielle signie que l'on ne pourra pas avoir,
à aucun moment, une ligne de Vente avec un code produit IdPro
inexistant dans la table Produit.
Une valeur de clé étrangère peut être Null
Soit les deux relations suivantes R1 (A, B, C) et R2 (D, E, A). Soit les
extensions suivantes des deux relations :