Académique Documents
Professionnel Documents
Culture Documents
Cours
Bases de Données
Chapitre 4 – Modèle Relationnel
Pr. Mohammed QBADOU
Pr M.QBADOU
ChapIV. Modèle logique de Données (MLD)
▪ Introduction
▪ Règles d’Intégrité
▪ Algèbre relationnelle
▪ Exercices
2
ChapIV. Modèle logique de Données (MLD)
I. Introduction
Le modèle Logique de Données MLD permet d’intégrer l’état de l’art technologique
des SGBD pour décrire les enregistrement logiques et entrevoir la structuration
physique des données.
Un MLD représente le schéma de la base de données (Tables et jointures) à créer sous
un système de gestion des bases de données SGBD
Il existe plusieurs types de modèles logiques :
• Modèle hiérarchique et Modèle Réseau,
• Modèle Relationnel,
• Modèle Objet ….
A chaque type de modèle correspond un environnement d’implantation (logiciels)
Pr M.QBADOU
Exemples :
Oracle, Informix, DB2, MySql, SqlServer, dBase, Access …)
MCD
▪ Attribut
▪ Entité
▪ Identifiant
MLD
Règles
▪ Association et CIF
▪ Champs
Pr M.QBADOU
▪ Table
▪ Clé primaire
▪ Clé étrangère
5
ChapIV. Modèle logique de Données (MLD)
2.1. Domaine
un domaine est un ensemble dénombrable (fini ou infini) de valeurs atomiques. Un
domaine est caractérisé par :
• Un nom
• Une ensemble de valeurs
Exemples
- Entier Octet = {0,1, … ,255} (Byte)
- Entier Court = {-2-15 , …0, … ,215 - 1} (Integer, int)
- Entier Long = {-2-31 , …0, … ,231 - 1} (Long)
- Réel Simple (single, float , real)
Pr M.QBADOU
Exemples
- Matricule : Entier court
- PrixAchat : Monétaire
Pr M.QBADOU
- NomClient : Chaîne
- AdresseClient : Chaîne
- PoidsVéhicule : Réel Simple
- DateNaissance : Date/Heure
- …
7
ChapIV. Modèle logique de Données (MLD)
2.3. Table(Relation)
une Table est un tableau à deux dimensions : Les colonnes constituent un ensemble
d’attributs appartenant chacun à un domaine. Les lignes représentent les valeurs prises
chacune par un attribut. Une ligne est appelée aussi enregistrements ou tuples. Une
relation est caractérisée par :
• un nom • Une dimension (nombre d’attributs)
• une liste <attribut : domaine> • Un degré (nombre de lignes)
• une clé primaire • une sémantique
Exemples
Clé simple : Etudiant (N°Etud, Nom , Prénom , Age)
Clé composée : Cliniques(NomClinique, Localité, Tél)
primaire d’une autre table A. Elle réalise le lien entre les enregistrements des deux
tables.
Exemples
Filières(CodeFilière, NomFilière)
9 Etudiant (N°Etud, Nom , Prénom , Age, CodeFilière#)
ChapIV. Modèle logique de Données (MLD)
2.6. Schéma relationnel (MLDR)
le schéma d’une base de données relationnelle est constitué :
• d’un ensemble de schémas de relations(tables) SR={R1, R2,..., Rn }
• d’un ensemble de règles d’intégrité.
Intégrité De Domaine
contrôle des valeurs des attributs
Impose que tout tuple d’une relation R1 qui se réfère à une relation R2 doit se
référer à un tuple existant dans la relation R2. Elle s’applique sur des relations qui
décrivent des associations.
Exemple :
la relation qui exprime le lien de travail entre un médecin et une polyclinique.
Pr M.QBADOU
Polyclinique
Medcins
Nom Travail
Localité NumMatr
Tél Nom# Nom
Localité# Spécialité
12 NumMatr# Tél
ChapIV. Modèle logique de Données (MLD)
Entreprise ENTREPRISE
N° Entreprise N° ENTREPRISE
Nom NOM
Adresse ADRESSE
Code_Postal CODE_POSTAL
Localité LOCALITÉ
13
ChapIV. Modèle logique de Données (MLD)
4.2. 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
1,1 AUTEUR LIVRE
N° auteur 1,n Ecrire N° livre
Nom Titre N° AUTEUR N° LIVRE
NOM Ecrire N° AUTEUR#
TITRE
4.3. 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 0,1 1,1 Facture
N° commande Impliquer N° facture
Pr M.QBADOU
Commande Article
N° commande 1,n Se composer 0,n
N° article
Date Libellé
quantité
Prix unitaire
SE COMPOSER ARTICLE
Pr M.QBADOU
COMMANDE
N° COMMANDE# N° ARTICLE
N° COMMANDE LIBELLÉ
N° ARTICLE#
DATE PRIX
QUANTITE UNITAIRE
15
ChapIV. Modèle logique de Données (MLD)
Enseignant 0,n Matière
0,n
N° enseignant Enseigner N° Matière
Nom Libellé
Prénom
1,n
Classe
N° Classe
Libellé ENSEIGNANT
Cycle
N° ENSEIGNANT
NOM
PRÉNOM
ENSEIGNER
N° ENSEIGNANT#
Pr M.QBADOU
N° MATIÈRE#
N° CLASSE#
CLASSE
N° CLASSE MATIÈRE
LIBELLÉ
CYCLE N° MATIÈRE
LIBELLÉ
16
ChapIV. Modèle logique de Données (MLD)
4.5. Règle 5 : Plusieurs relations entre 2 entités
Les règles générales de 1 à 5 s ’appliquent
Posséder
Personne 0,n 1,n Maison
N° personne N° maison
Nom Adresse
Prénom Localité
Habiter 1,n
1,1
POSSÉDER
Pr M.QBADOU
N° PERSONNE #
PERSONNE
N° MAISON#
MAISON
N° PERSONNE
N° MAISON# N° MAISON
NOM ADRESSE
PRÉNOM LOCALITÉ
17
ChapIV. Modèle logique de Données (MLD)
4.6. 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é 0,n
Filiale
N° société Détenir
Nom
% du capital
Capital Mère DETENIR
SOCIÉTÉ
0,n Mère
N° SOCIÉTÉ N° SOCIÉTÉ#
NOM N° SOCIÉTÉ FILIALE#
CAPITAL % DU CAPITAL
Filiale
0,n
Employé
Pr M.QBADOU
Chef Employé
Matricule Hiérarchie
Matricule
Nom
Prénom Subordonné MatriculeChef#
Fonction Hiérarchie
0,1 Nom
Prénom
Fonction
18
ChapIV. Modèle logique de Données (MLD)
4.7. Règles 7 : CIF
La cléCible de la TableCible devient une clé étrangère dans la table TableCIF
La clé de la table TableCIF est composée de Cléorig1 et Cléorig2.
Niveau CIF
NumSec
AffectationMatière Matière
AnnéeUniv Matière CodeMatière CodeMatière
Enseignant Niveau Matière
AnnéeUn CodeMatière Section
NumEns Matière Enseignant
AnnéeUn
NomEns
NumEns NumEns
PreEns
NomEns
Spécialité
PreEns
Département
Spécialité
Ville
Remarque : Département
Ville
19
Les entités qui ne contiennent que la clé Sont à éliminer du MLD
ChapIV. Modèle logique de Données (MLD)
4.8. Règles 8 : Héritage
Garder à la fois l’entité générique et les entités spécifiques. On distingue deux cas :
Valeurs des clés spécialisées sont héritées de la clé générique
Valeurs des clés spécialisées ne sont pas héritées de la clé générique
Cas 1 : Valeurs des clés spécialisées sont héritées de la clé générique
Véhicule
Véhicule
VéhiculeVéhicule
Num_Véhicu Nombre_cylind Marque Modèle Num_Véhicule
Num_Véhicule
Num_Véhicule
Num_Véhicule
le re Nombre_cylindre
Nombre_cylindre
Nombre_cylindre
Nombre_cylindre
MarqueMarque
Marque Marque
1 4 Renault R19 ModèleModèle
Modèle Modèle
2 6 SCANIA R144 LA 4X2 NA
VoitureVoiture
VoitureVoiture Camion
Camion Camion
Camion
3 5 Peugeot 506 Num_voiture
Num_voiture
Num_voiture
Num_voiture
XT XT
XT XT Num_camion
Num_camion
Num_camion
Num_cam
4 6 SCANIA R 124 LA 4X2 NA NombrePlace
NombrePlace
NombrePlace
NombrePlace Tonnage
Tonnage
TonnageTonnage
4 19
On relie les tables spécialisées avec la table générique via les clés
On rajoute une propriété TypeVéhicule à la table générale pour accéder directement à la bonne
table spécialisée : Réduire le temps de recherche des informations spécialisées
Voiture Véhicule Camion
Num_Voiture Num_Véhicule Num_camion
NombrePlace Nombre_cylindre Tonnage
Marque
Modèle
20 TypeVéhicule
ChapIV. Modèle logique de Données (MLD)
Cas 2 : Valeurs des clés spécialisées ne sont pas héritées de la clé générique
Num_Véhicu Nombre_cylind Marque Modèle Véhicule
Véhicule
VéhiculeVéhicule
le re Num_Véhicule
Num_Véhicule
Num_Véhicule
Num_Véhicule
Nombre_cylindre
Nombre_cylindre
Nombre_cylindre
Nombre_cylindre
1 4 Renault R19 MarqueMarque
Marque Marque
2 6 SCANIA R144 LA 4X2 NA ModèleModèle
Modèle Modèle
Deux cas :
- introduire la clé spécialisée dans la table générique
introduire une propriété typeVéhicule pour distinguer le type de la clé spécialisée introduite dans la
table générique. Voiture Véhicule Camion
Pr M.QBADOU
1,N Concerner
CLIENT
Prendre CONSOMMATIONS QtéCons
0,N 1,1
CodeClt
Nom N°consommation 1,N
Adresse Dateconsommation PRESTATION
0,N
Ville CodePrest
Tél Libellé
Effectuer 1,
N
LOCATIONS Offre
N°Location 1,1 Concerner PrixU
1,1
DateDébut
1,N
Pr M.QBADOU
DateFin
1,N Avoir 1,1
HÔTELS
CATEGORIE
CHAMBRE N°Hôtel
CodeCat
1,N Appartenir 1,1 N°Ch 1,N NomHôtel
Description
TélCh AdresseHôtel
CLASSES TélHôtel
Tarifer 1, Nbreétoiles
22 1,N TarifJour N
ChapIV. Modèle logique de Données (MLD)
5.2. Gestion des Intérimaires
Intérimaires Conventions
N° Intérimaire 1-N (1,1) N°Ordre
Signer
Nom … Durée
0-N 1-1
1-1
Avoir
Posséder
1-N 1-1
1-N Appartenir
Qualifications
Niveaux
CodeQualification
CodeNiveaux 1-N
0-N TauxJour
CoeffTaux 0-N
Exiger …
… Branches
CodeBranche
Intervenir 1-N Intitulé
Pr M.QBADOU
Contrats Clients
1-N N° Contrat 1-1 Signer 1-N CodeClt
DateDébut … NomClt …
Règlements
1-N
N° Règlement
Concerner 1-1 MontantRèg
23 …
ChapIV. Modèle logique de Données (MLD)
5.3. Gestion des emprunts de livres dans une bibliothèque
Catégories MotsCLés
CodeCatégorie MotClé
Parenté
Nom … 1-N
1-N
Enfant Parent
1-N Contenir
N°Page Exemplaires
1-1
Appartenir N°Exemplaire
1-1 1-N
TauxJour Adhérents
1-N
… N°Adhérent
1-1 Nom
Livres 0-N Adresse
N° Livre 1-N Avoir Porte sur Tél
1-1 Titre …
1-N
Pr M.QBADOU
N°Ch
CodeCat TélCh N°Hôtel
Description CodeCat# NomHôtel
N°Hôtel# AdresseHôtel
TélHôtel
Tarifer Nbreétoiles#
CLASSES
Nbreétoiles#
CodeCat# Nbreétoiles
25 TarifJour
ChapIV. Modèle logique de Données (MLD)
5.2. Gestion des Intérimaires
Intérimaires Conventions
N° Intérimaire N°Ordre
N°Intérimaire#
Intervenir Nom …
CodeNiveaux# Durée
N°Intérimaire#
N°Contrat# CodeQualif#
Qualifications
Niveaux
CodeQualification
CodeNiveaux
TauxJour
CoeffTaux Exiger …
… CodeNiveaux# CodeBranche#
CodeQualif#
Branches
N°Contrat#
CodeBranche
Intitulé
Pr M.QBADOU
Contrats
N° Contrat
DateDébut Règlements
Clients
CodeClt … N° Règlement
CodeClt# MontantRèg
NomClt … …
N°Contrat#
26
ChapIV. Modèle logique de Données (MLD)
5.3. Gestion des emprunts de livres dans une bibliothèque
Exemplaires
N°Exemplaire
Livres
TauxJour Emprunts
N° Livre …
Titre … N°Livre#
N°Emprunt
CodeCat# DateEmprunt
Pr M.QBADOU
CodeEd# DateRetour
N°Aut# N°Adh#
Exemp_Emprunts
Editeurs Auteurs s
N°Exemplaire#
CodeEditeur N° Auteur N°Emprunt#
NomEditeur … NomAuteur
…
27
ChapIV. Modèle logique de Données (MLD)
VI. Algèbre relationnelle
Les opérations de base sont classées en deux types :
Les opérations ensemblistes : opérations binaires qui à partir de deux relations
de même schéma, en construit une troisième :
• union
• intersection
• différence
• Projection
• Restriction(sélection)
• Opérations binaires sur deux relations pour construire une relation par
fusion : Produit Cartésien, jointures.
28 • Opération de division
ChapIV. Modèle logique de Données (MLD)
6.1. Opérations ensembliste
a. Union Notations :
porte sur deux relations de même schéma R1 et R2 pour R = R1 U R2
construire une relation de même schéma R ayant pour
R
tuples ceux appartenant à R1 ou R2 ou à R1 et à R2.
Exemple : Soient les relations suivantes : U
Appareil_Anc(CodeType, Nbplace , Intitulé) R1 R2
Appareil_Nouv(CodeType, Nbplace , Intitulé)
Appareil_A Appareil_N
CodeType Nbplace Intitulé CodeType Nbplace Intitulé
741 100 BOEING 747-100 74E 150 BOEING 747-100 COMBI
734 450 BOEING 737-400 SSC 80 CONCORDE
Pr M.QBADOU
Fournisseurs Clients
Pr M.QBADOU
Exemple R(A1,…,An)
Prix_Prod
Obtenir par projection, la liste des références et prix des produits
RefProd,PrixU
Pr M.QBADOU
Produits Prix_Prod
RéfProd Désignation PrixU RéfProd PrixU
100 Disque Dur 20 GO 850 100 850
32 102 Ram 256 600 102 600
ChapIV. Modèle logique de Données (MLD)
b. Sélection(Restriction)
La sélection de la relation R par un critère C est une relation R’ de même schéma dont
les tuples sont ceux de R satisfaisant C ; C pouvant être exprimée à l’aide de
constantes, d’opérateurs arithmétiques (>, <, etc.) ou logiques (et, ou, non)
Notations : R’(A1,…,An)
R’ = C ( R) C
R(A1,…,An)
Exemple
Obtenir par sélection les produits dont le prixU est supérieur à 600
Prix>600
Prix 600 = (Pr oduits)
Pr M.QBADOU
Produits
Produits
Prix>600
RéfProd Désignation PrixU
RéfProd Désignation PrixU
100 Disque Dur 20 GO 850
100 Disque Dur 20 GO 850
33 102 Ram 256 600
ChapIV. Modèle logique de Données (MLD)
6.3 Opérations de jointure
a. Produit cartésien
Opération portant sur deux relations R1 et R2 consistant à construire une relation qui a
pour schéma la juxtaposition des deux schémas opérandes et pour tuples toutes les
combinaisons de tuples des deux relations opérande R
Notations : R = R1 × R2
×
Exemple : étant donné les relations suivantes : R2
R1
Fournisseurs(N°Fournisseur, Nom)
Produits(RéfProd, Désignation,PrixU)
Fournisseurs Produits
N°Fournisseur Nom RéfProd Désignation PrixU
1024 Thomson 100 Disque Dur 20 GO 850
Pr M.QBADOU
R’ = J C ( R, S ) C
R S
En fonction de la forme de la condition, on peut distinguer les types de jointures
suivants :
Pr M.QBADOU
Thêta jointure
Equijointure
Jointure Naturelle
Alaoui 6 99 Livre 30
R = J Age AgeC ^ Pr ix 50 ( Personnes , Cadeaux )
Alaoui 6 20 baladeur 45
Nom Age AgeC Article Prix
Alaoui 6 10 déguisement 15
Brahimi 42 20 baladeur 45
Brahimi 42 99 Livre 30
Brahimi 42 10 déguisement 15
Moussaoui 16 99 Livre 30
Moussaoui 16 10 déguisement 15
36 Moussaoui 16 20 baladeur 45
ChapIV. Modèle logique de Données (MLD)
b.2 Equijointures
L’équijointure consiste en une jointure dont la condition C s’expriment en utilisant
l’opérateurs = (égalité)
Exemple Fournisseurs
Liste des fournisseurs et leurs produits : N°Fournisseur Nom
Produits 1024 Thomson
Fournisseur Produit
Four_ Pr od = J Fournisseur . N Four = Pr oduit . N Four ( Fournisseu r , Pr oduit )
N°Fournisseur Nom RéfProd Désignation PrixU N°Four
1024 Thomson 100 Disque Dur 20 GO 850 1024
1024 Thomson 101 Ecran LCD 17" 1500 1024
37 1025 INA 102 Ram 256 600 1025
ChapIV. Modèle logique de Données (MLD)
b.3. Jointure naturelle
La jointure naturelle de deux relations R et S est une équijointure sur tous les attributs de
même nom dans R et dans S, suivie de la projection qui permet de ne conserver qu’un seul
des ces attributs de même nom.
Exemple : Liste des cadeaux distribués sur les personnes tel que :
Personne.Age= Cadeaux.Age
Personnes Cadeaux
Nom Prénom Age Age Article Prix
Alaoui Ahmed 6 99 Livre 30
Brahimi Fatima 42 6 Poupé 60
Moussaoui Ali 16 20 baladeur 45
Pr M.QBADOU
R = J ( Personnes , Cadeaux )
Nom Prénom Age Article Prix
Alaoui Ahmed 6 Poupé 60
ParticipantAToutesEpreuves
NomAtlete Epreuve Epreuve
NomAtlete
Alaoui 200 m 200 m
Moussaoui
Alaoui 400 m 400 m
Moussaoui 200 m 110 m
Moussaoui 400 m
39 Moussaoui 110 m
ChapIV. Modèle logique de Données (MLD)
Opérations algébriques vers l’écriture SQL
◆ Projection seule: π TYPE (AVION)
SELECT [DISTINCT] AVION.type type
FROM AVION
AVION
◆ Restriction seule:
σ capacite>200(AVION)
SELECT A.* Capacite>
FROM AVION A 200
WHERE A.capacite > 200 AVION
σ capacite>200(πTYPE(AVION))
Pr M.QBADOU
◆ Sélection et projection
type
SELECT [DISTINCT] A.type
FROM AVION A
Capacite>
WHERE A.capacite > 200 200
AVION
40
ChapIV. Modèle logique de Données (MLD)
Opérations algébriques vers l’écriture SQL
◆ Union : R1 R2
SELECT * FROM R1
UNION
R1 R2
SELECT * FROM R2
◆ Intersection :
R1 R2
SELECT * FROM R1
INTERSECT
SELECT * FROM R2 R1 R2
Pr M.QBADOU
◆ Intersection :
R1 - R2
SELECT * FROM R1
EXCEPT -
SELECT * FROM R2 R1 R2
41
ChapIV. Modèle logique de Données (MLD)
Opérations algébriques vers l’écriture SQL
◆ Produit cartésien :
SELECT * R1 x R2
FROM R1 , R2
×
Ou bien
R1 R2
SELECT *
FROM R1 CROSS JOIN R2
◆ Jointures :
JC(R1,R2)
SELECT *
Pr M.QBADOU
JXC(R1,R2*)
◆ Jointure externe droite :
SELECT *
FROM R1 RIGHT OUTER JOIN R2 ON C C
R1 R2
Pr M.QBADOU
43 R1 R2
ChapIV. Modèle logique de Données (MLD)
Opérations algébriques vers l’écriture SQL
◆ Division R:S
SELECT sch(R)-sch(S) FROM R
WHERE NOT EXISTS(
:
SELECT * FROM S
WHERE NOT EXISTS( R S
SELECT * FROM RS
WHERE R.IdR=RS.IdR AND S.IdS=RS.IdS)
R MATRICULE NUMAV
1 100 S NUMAV
2 100
: 100
101
= Q MATRICULE
2
2 101
44
ChapIV. Modèle logique de Données (MLD)
Opérations algébriques vers l’écriture SQL
Exemple :
Quels sont les pilotes (leur matricule et leur nom) qui pilotent tous les avions?
<=> Quels sont les pilotes tels que, quel que soit l'avion, ils le pilotent ?
<=> Quels sont les pilotes tels que, quel que soit l'avion, il existe un départ assuré par ce
pilote sur cet avion ?
<=> Quels sont les pilotes tels qu'il n'existe pas d'avion tel qu'il n'existe pas de départ de
ce pilote sur cet avion ?
FROM AVION
WHERE NOT EXISTS (
SELECT *
FROM DEPART
WHERE DEPART.MATRICULE = PILOTE.MATRICULE
AND DEPART.NUMAV = AVION.NUMAV
45 )
)
ChapIV. Modèle logique de Données (MLD)
6.5 Equivalences
R ∩ S = S ∩ R, R ∪ S = S ∪ R
46 ▪ efficacités différentes
ChapIV. Modèle logique de Données (MLD)
Exemple
Soit le schéma suivant :
Fournisseur (N°fno, Nom, Adresse, Ville)
Produit (N°prod, Designation, Prix, Poids, Couleur)
Commande (N°comm, N°fno, N°prod, , Quantité)
Produit = 8 lignes * 5 colonnes
Commande = 10 lignes * 4 colonnes
Opération : Référence (N° prod), prix et quantité des produits commandés en
plus de 10 exemplaires par commande ?
Solution1
Pr M.QBADOU
R1=J (Commande,Produit)
R2 = σ Quantité > 10 (R1)
R3 = πN°prod, Prix, Quantité(R2)
R1 = jointure sur la table Commande et la table Produit = 10*8 = 80 tuples au
47 pire
ChapIV. Modèle logique de Données (MLD)
Solution2
(sur 2 attributs)
48
ChapIV. Modèle logique de Données (MLD)
VII. Formes Normales(FN)
Les formes normales permettent :
Les formes normales sont utilisées en base de données relationnelles, mais il est
possible de vérifier qu’elles sont bien respectées dès l’étape de création du MCD.
▪ de 1NF à 6NF et
Les formes normales 1NF, 2NF, 3NF et BCNF sont suffisantes pour construire un
49
modèle relationnel juste.
ChapIV. Modèle logique de Données (MLD)
1ère FN
Une relation est en 1ère FN si
• Tout attribut est atomique et monovalué. Autrement, un attribut ne peut
désigner une donnée composée (simple et n’a qu’une seule valeur par ligne) .
• Tous ses attributs sont en DF de sa clé (pas de lignes dupliquées)
• Tous ses attributs sont constants dans le temps (choisir par exemple l’attribut
date de naissance plutôt que l’attribut âge pour éviter de le remettre à jour).
Une relation en 1FN garantie un accès plus rapide aux données et évite les besoins
de mises à jour .
Exemple : La relation suivante n’est pas en 1FN, car la propriété étudiant désigne une
Pr M.QBADOU
liste d’étudiants.
Etudiant
Id_etudiant
Nom
Prenom
Adresse
Age
Diplomes
50 Date_inscr
ChapIV. Modèle logique de Données (MLD)
2ème FN
Une relation est en 2ème FN ssi :
• tout attribut non clé est en DF de toute la clé (et non pas d’une partie de la clé).
de l’attribut id-avion.
Pr M.QBADOU
Modèle
0,N 1,1
appartient
52
ChapIV. Modèle logique de Données (MLD)
BCNF
Une relation est en BCNF ssi :
• Elle est en 3ème FN.
• Toutes les propriétés non-clés ne soient pas source de dépendance fonctionnelle
(DF) vers une partie de la clé.
La Forme Normale de Boyce-Codd, ou BCNF, assure la cohérence des données,
ainsi que la non-redondance.
Exemple : l’entité Resultat, avec un identifiant composé de Resultat
Id_etudiant
(id_etudiant, id_matiere) et les DF suivantes : Id_matiere
Id_enseignant
– {id etudiant, id matiere → id enseignant, note} note
– {id enseignant → id matiere}
Pr M.QBADOU
Enseignant
Cette entité n’est pas en BCNF car id_matiere, qui fait partie
Id_enseignant
de l’identifiant, dépend directement d’un autre attribut …
54