Conception de Bases de Données Relationnelles
Conception de Bases de Données Relationnelles
Sommaire
I. Concepts de Bases
I. Concepts de Bases
II. Processus de construction d'une BD I-1. Base de données ?
III. Modèle Entité-Association
IV. Modèle Conceptuel de Données I-2. SGBD
V. Modèle relationnel I-3. Architecture SPARC-ANSI
VI. Dépendances fonctionnelles
VII. Compilation des concepts acquises
VIII. BibliographiePr. [Link] BELRHITI
Webographie
EL ALAOUI 3 Pr. A. EL BELRHITI EL ALAOUI 4
1
11/11/2025
I. Concepts de Bases
I-3. Architecture SPARC-ANSI
Définit trois niveaux d’abstraction :
Niveau externe ou Schéma Externe.
Niveau conceptuel.
Niveau interne.
Niveau externe :
Définit comment un utilisateur voit la partie lui
concernant de la BD.
Les vues des utilisateurs.
2
11/11/2025
3
11/11/2025
I. Concepts de Bases
Le formalisme E-A est :
II. Processus de construction d'une BD
Une norme ISO.
III. Modèle entité-association
Une description statique des données des SI.
IV. Modèle conceptuel de données
N'est pas propre à Merise (MCD), utilisé dans d'autres
V. Modèle relationnel
méthodes (SADT,…).
VI. Dépendances fonctionnelles
Présent dans la plupart des SGBDR : ACCESS, SQL Server,
VII. Compilation des concepts acquises
ORACLE, Ingres, Sybase…
Pr. A. EL BELRHITI EL VIII. Bibliographie et Webographie
ALAOUI 21 Pr. A. EL BELRHITI EL ALAOUI 22
4
11/11/2025
Suite exercice 1
Pr. A. EL BELRHITI EL ALAOUI 27 Pr. A. EL BELRHITI EL ALAOUI 28
5
11/11/2025
6
11/11/2025
7
11/11/2025
IV. Le MCD
Dictionnaire :
IV-9. Exemples
Exemple 2
Nom Signification Type Longueu Observation Spécifications
r
NumClt Numéro client Numérique 10 clé numérique Les clients sont caractérisés par un numéro de client,
PrClt Prénom client Chaîne de 25
leur nom, prénom, date de naissance, rue, code postal
caractères
DateLiv Date de livraison Date 10 jj/mm/aaaa
et ville…
AdrClt Adresse du client Chaîne de 40
… caractères
Ils achètent des articles à une date donnée et dans une
quantité donnée.
8
11/11/2025
E={..-1,0,1..} Exemple :
9
11/11/2025
Exemple : Exemple :
Articles(NumArt, NomArt, PrixUV) NumArt est la clé primaire de la relation Articles
Notation : cle_primaire
10
11/11/2025
b. Règle 2 b. Règle 2
Exemple : l’association Concerne suivante
Dans le cas de deux entités reliées par une association de Articles
Commandes
type 1 : 1 - NumCmd - NumArt
1,1 Concerne 0,1 - NomArt
- DateCmd
Mettre la clé primaire d’une table des deux tables de - QtCmd - PrixUV
Faire migrer les attributs de l’association vers une des Commentez la solution suivante :
deux tables en relation. Commandes(NumCmd, DateCmd)
Articles(NumArt, NomArt, PrixUV, #NumCmd, QtCmd)
Pr. A. EL BELRHITI EL ALAOUI 62 Pr. A. EL BELRHITI EL ALAOUI 63
c. Règle 3 c. Règle 3
Exemple : l’association Concerne suivante
Dans le cas de deux entités reliées par une Commandes Articles
association de type 1:n - NumCmd
1,n Concerne 0,1
- NumArt
- NomArt
- DateCmd - QtCmd - PrixUV
L’identifiant de l’entité côté 0,n ou 1,n devient
une clé étrangère vers la clé primaire de la table
côté 0,1 ou 1,1. se traduit par :
Les attributs de l’association glissent vers la Articles(NumArt, #NumCmd, QtCmd, NomArt, PrixUV)
table côté 0,1 ou 1,1. Commandes(NumCmd, DateCmd)
Pr. A. EL BELRHITI EL ALAOUI 64 Pr. A. EL BELRHITI EL ALAOUI 65
d. Règle 4 d. Règle 4
Exemple : l’association Concerne
Une association de type n : m est traduite par une Commandes Articles
- NumCmd - NumArt
relation dont : 1,n Concerne 0,n - NomArt
- DateCmd - QtCmd - PrixUV
La clé primaire est composée de deux clés étrangères
vers les clés primaires des deux tables en association.
se traduit par :
Les attributs de l’association deviennent des attributs de
Commandes(NumCmd, DateCmd)
cette relation.
Articles(NumArt, NomArt, PrixUV)
Lignes-de-commande(#NumCmd, #NumArt, QtCmd)
Pr. A. EL BELRHITI EL ALAOUI 66 Pr. A. EL BELRHITI EL ALAOUI 67
11
11/11/2025
e. Règle 5 e. Règle 5
Exemple : Avions 0,n 0,n Pilotes
Une association entre trois entités ou plus est - Num_Avion Voler - Num_Pilote
12
11/11/2025
Exemples :
Une relation est en 1FN, si tous ses attributs sont
Produits( Num_Produit, désignation, Prix_Unitaire) en 1FN
atomiques : Fournisseurs( Num_Four, Nom_Four, adresse) :
non multiples, Si UN fournisseur peut avoir plusieurs adresses :
Fournisseurs n’est pas en 1FN.
non composés.
Solution :
Fournisseurs(Num_Four, Nom_Four)
Adresses(Num_adresse, adresse, #Num_Four)
Une relation est en 2FN si : Clients( Num_clt, Nom_Clt, Prénom_Clt) est en 2FN.
Une relation est en 3FN si: Une relation est en BCNF si:
Elle est en 2FN. Elle est en 2FN.
Il n’existe aucune DF entre deux attributs non clé primaire. Les seules DF autorisées sont celles dans lesquelles une clé
détermine un attribut.
Exemple : R(Vol, Avion, Pilote) est en 3FN?
Exemple :
En 2FN si Vol → Avion et Vol → Pilote
Adresses( Ville, Rue, Code postal, Numéro)
Pas en 3FN si Avion → Pilote.
N’est pas en BCNF car : Code postal → Ville
o Solution : R1(Vol, #Avion)
Solution : CodeP_villes (Code postal, Ville)
R2(Avion,Pilote) Adresses(NumAdr, Rue, #Code postal, Numéro)
Pr. A. EL BELRHITI EL ALAOUI 78 Pr. A. EL BELRHITI EL ALAOUI 79
13
11/11/2025
14
11/11/2025
15
11/11/2025
VIII. Bibliographie et
Webographie
Conception méthodique des bases de données, Gérard
BUENO. Editions Ellipses 2008
Bases de données, Georges GARDARIN. Editions Eyrolles
2003.
[Link]
[Link]
Conception d’une bases de données, Support de cours de
Cyril GRUAU.
Dépendances fonctionnelles et normalisation, Support de
cours de Rosine CICHETTI.
Pr. A. EL BELRHITI EL ALAOUI 95
16