0% ont trouvé ce document utile (0 vote)
89 vues26 pages

Schéma relationnel en base de données

Je veux juste télécharger mon document
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
89 vues26 pages

Schéma relationnel en base de données

Je veux juste télécharger mon document
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

19/03/2024

MODÈLE RELATIONNEL

 Le modèle de données relationnel désigne une manière de structurer les informations sous la forme de matrices que
l’on appelle tables ou relations.
 Ce modèle, très simple, est de loin le plus répandu dans les Systèmes de Gestion de Bases de Données (SGBD), qui
sont ainsi dénommés SGBD relationnels.
 Une base de données relationnelle est donc constituée d’un ensemble de données structurées sous forme de
relations (Tables)

DR. EL MARGAE SAMIRA 27

MODELE RELATIONNEL

 Dans le cas des systèmes relationnels, les fichiers de la base contiennent:


- Soit la représentation binaire des tables relationnelles; chaque table est constituée d’un
ensemble d”enregistrements, un par ligne;
- Soit des index, structures de données permettant d’accélerer les opérations sur les
données, et notamment les recherches.

DR. EL MARGAE SAMIRA 28

Les composants d’un SGBD relationnel

1
19/03/2024

MODÈLE RELATIONNEL

 Les données sont organisées en relations


 Tables: relations
 Les lignes de ces relations sont appelées des nuplets ou enregistrements.
 Les colonnes sont appelées des attributs.

DR. EL MARGAE SAMIRA 29

MODÈLE RELATIONNEL

 Chaque attribut possède un domaine de valeurs (D1 ,D2 ,..., Dn ).


 Domaine = Ensemble des valeurs que peut prendre un attribut.
 Exemples: NAS : ensemble des nombre de 9 digits de sécurité sociale, valides.
Nom : ensemble des noms de personnes.
Age : âge possible : 16-70
 Un tuple est composé de n éléments :

DR. EL MARGAE SAMIRA 30

2
19/03/2024

MODÈLE RELATIONNEL

Schéma de relation
 On peut décrire une relation par
Le nom de la relation.
Un nom (distinct) pour chaque dimension, dit nom d’attribut
Le domaine de valeur de chaque dimension.
 C’est le schéma de la relation, de la forme R (A1 : D1, A2 : D2, · · · , An : Dn)
 Exemple : Département (nom: string, code: string),
ou plus simplement Département (nom, code)
DR. EL MARGAE SAMIRA 31

MODÈLE RELATIONNEL
Schéma de relation
Les attributs, leur type, la clé primaire, sont des contraintes qui s’appliquent à chaque
nuplet. Ces contraintes sont décrites dans un schéma, déclaré au moment de la création
de la [Link] la commande de création de la table Artiste :

On pourra représenter ce schéma par le résumé suivant, dans lequel on met en gras l’information essentielle, la clé
primaire.
DR. EL MARGAE—
SAMIRA 32

Artiste (idArtiste, nom, prénom, annéeNaissance)

3
19/03/2024

MODÈLE RELATIONNEL
 Schéma d’une base de données relationnel
 Ensemble de noms de tables
 Ensemble d’attributs pour chaque table
 STUDENT [Num, FirstName, LastName, BirthYear]
 INSCRIPTION [Num, CourseCode,Year]
 Instance d’une base de données
 Ensemble de valeurs dans une table (ensemble de nuplets)
 {(h2008120, Dumont, Marie, 1980), (h2008122, Dubois, Paul, 1980)}
DR. EL MARGAE SAMIRA 33

MODÈLE RELATIONNEL: A RETENIR

Très simple ! (parfois trop). Favorise la rigueur et la clarté.

DR. EL MARGAE SAMIRA 34

4
19/03/2024

BASE DE DONNÉES RELATIONNELLE


Relation (Table)
 Représentée par un tableau à 2 dimensions
 Composée d’un nombre fini de colonnes (attributs)
 Chaque attribut possède un nom unique à l’intérieur d’une relation.

DR. EL MARGAE SAMIRA 35

BASE DE DONNÉES RELATIONNELLE

Relation (Table)

 Les champs de données définissent les types d'information que l’on veut stocker
dans la table (par exemple : des informations concernant les élèves d'une école).
 Chaque enregistrement représente une occurrence de ce qu'on veut stocker (par
exemple un élève).
 Chaque table possède un nom unique (par exemple : tbl_Eleves).
 Chaque enregistrement (nuplet) correspond à une ligne de la table.

DR. EL MARGAE SAMIRA 36

5
19/03/2024

BASE DE DONNÉES RELATIONNELLE RELATIONNEL: TABLES

Relation (Table)

 Chaque champ correspond à une colonne de la table.


 Chaque champ peut représenter des données de natures différentes (Nom, prénom, Date de
naissance, etc ...).
 Chaque champ peut représenter des données de types différents (Texte, Nombre, Date,
valeur booléenne, etc)
Le nom d'une table doit être unique à l'intérieur d'une BD.

DR. EL MARGAE SAMIRA 37

BASE DE DONNÉES RELATIONNELLE: TABLE

Relation: Clé primaire

 Dans chaque table relationnelle on trouve un attribut particulier, la clé primaire.

 La valeur de la clé primaire permet d’identifier un unique nuplet dans la table.

 Elle permet de référencer ce nuplet depuis une autre table. Souvent, la clé primaire est un

simple numéro d’identification.

DR. EL MARGAE SAMIRA 38

6
19/03/2024

BASE DE DONNÉES RELATIONNELLE

Relation: Clé primaire


 Pour définir des liens entre plusieurs tables la clé primaire est indispensable, donc:
CHAQUE TABLE DOIT AVOIR UNE CLE PRIMAIRE !!!
 Exemples: Le numéro d’élèves pour les élèves d’une école.

DR. EL MARGAE SAMIRA 39

BASE DE DONNÉES RELATIONNELLE


Relation: Clé primaire

 Une des contraintes d’intégrité d’un schéma est l’unicité d’identification des n-uplets d’une relation.
Cette identification unique est assurée par la notion de clé de relation.
 Une clé peut être composée d’un seul attribut ou d’une liste d’attributs qui caractérise un tuple (n-
uplet) de la relation de manière unique
 Une relation peut avoir plusieurs clés.
 Une clé comportant un minimum d’attributs sera choisie comme étant clé primaire, les autres clés
possibles sont appelées clés candidates. Par convention, la clé primaire d’une relation est soulignée
dans un schéma de relation.

Exemple:
DR. EL MARGAE SAMIRAClient (NCl, NomCl, PrenomCl, AdrCl) 40

7
19/03/2024

BASE DE DONNÉES RELATIONNELLE

Relation: Clé primaire

Remarque : si on choisit pour clé (NomCl, AdrCl) la modélisation ne permet pas des homonymes
habitant la même ville.
DR. EL MARGAE SAMIRA 41

BASE DE DONNÉES RELATIONNELLE

 Clé étrangère = Attribut (ou ensemble d’attributs) d’une relation qui fait (font)
référence à la clé primaire d’une autre relation
 Une clé étrangère d'une relation est formée d'un ou plusieurs de ses attributs (d’une ou
de plusieurs colonnes d’une table ) qui constituent une clé candidate dans une autre
relation.
 Toutes les valeurs des clés étrangères apparaissent dans une autre relation comme valeurs
d’une clé.
 Par convention, la clé étrangère d’une relation précédée par le symbole # dans un
schéma de relation.
DR. EL MARGAE SAMIRA 42

8
19/03/2024

BASE DE DONNÉES RELATIONNELLE


Clé étrangère

 Exemple : Soient les schéma de relations suivants


 Client(NCl,NomCl,AdrCl) - Désigne l’ensemble des clients.
 Commande (NCmd, DateCmd, #NCl) - Désigne l’ensemble des commandes.

 L’attribut NCl dans la table Commande est une clé étrangère. Il prend ses valeurs dans le domaine
de valeurs de l'attribut NCl qui se trouve, dans le schéma de relation Client. Une commande est
toujours passée par un Client existant dans la base de données

DR. EL MARGAE SAMIRA 43

BASE DE DONNÉES RELATIONNELLE

 Clé étrangère = Attribut (ou ensemble d’attributs) d’une relation qui fait (font)
référence à la clé primaire d’une autre relation
 A quoi cela sert ? Exemple d’une mauvaise relation

Problèmes :
Répétition des noms, prénoms, dates de
naissances, ISBN, etc. autant de fois qu’il y a
DR. EL MARGAE SAMIRA 44

d’emprunts = Redondance d’information


Comment identifier les nuplets ?

9
19/03/2024

BASE DE DONNÉES RELATIONNELLE

Table: Clé étrangère


 La solution ? Diviser les données en plusieurs relations

⇒ Division en 3 relations associées : Emprunteurs, Emprunts et Livres


⇒ Stockage unique des informations de chaque livre
⇒ Stockage unique des informations de chaque emprunteur
⇒DR. Stockage
EL MARGAE SAMIRA unique des informations de chaque emprunt 45

ATTENTION: Access appelle Relation ce qui en fait s’appelle Association

BASE DE DONNÉES RELATIONNELLE

Table: Clé étrangère


Association entre deux plusieurs relations

DR. EL MARGAE SAMIRA 46

10
19/03/2024

BASE DE DONNÉES RELATIONNELLE


Table: Clé étrangère
 L’attribut RefEmprunteur de la relation Emprunts est une clé étrangère qui fait
référence à l’attribut NuméroCarte de la relation Emprunteurs
 L’attribut RefLivreEmprunté de la relation Emprunts est une clé étrangère qui fait
référence à l’attribut ISBN de la relation

DR. EL MARGAE SAMIRA 47

BASE DE DONNÉES RELATIONNELLE


Table: Clé étrangère

DR. EL MARGAE SAMIRA 48

11
19/03/2024

BASE DE DONNÉES RELATIONNELLE

Clé étrangère
Intégrité référentielle : Ensemble de règles garantissant la cohérence (l'intégrité) des
données réparties dans plusieurs relations.

DR. EL MARGAE SAMIRA 49

SCHÉMA DE BASE DE DONNÉES RELATIONNELLE

 Une base de données relationnelle est une collection de relations.


 L’ensemble des schémas des relations de la collection est appelé schéma relationnel de la base.
 Formellement un schéma de base de données relationnelle B est un ensemble de schémas de
relations R1, R2,..., Rp.
 Exemple :
 Client (NCl, NomCl, AdrCl)
 Commande (NCmd, DateCmd, #NCl)
50

DR. EL MARGAE SAMIRA

12
19/03/2024

TRADUCTION D’UN MODÈLE ENTITÉ -ASSOCIATION EN MODÈLE


RELATIONNEL

 L’absence de SGBD supportant directement le modèle Entité - Association amène à


transformer le schéma conceptuel en un schéma conforme au modèle de données du SGBD
cible.
 Les règles qui permettent de passer d’un schéma Entité - Association à un schéma relationnel.
 Traduction des entités
 Traduction des associations

DR. EL MARGAE SAMIRA 51

TRADUCTION D’UN MODÈLE ENTITÉ -ASSOCIATION EN MODÈLE


RELATIONNEL

Traduction des entités

Toute entité est traduite selon les trois règles suivantes :

 L’entité se transforme en une relation.

 L’identifiant de l’entité devient la clé primaire de la relation.

 Les propriétés de l’entité deviennent des attributs de la relation.

DR. EL MARGAE SAMIRA 52

13
19/03/2024

TRADUCTION D’UN MODÈLE ENTITÉ -ASSOCIATION EN MODÈLE


RELATIONNEL
Traduction des entités

DR. EL MARGAE SAMIRA 53

TRADUCTION D’UN MODÈLE ENTITÉ -ASSOCIATION EN MODÈLE


RELATIONNEL

Traduction des associations


La traduction d’une association s’effectue selon les cardinalités relatives aux entités participant à
l’association:
Deux catégories d’associations :
 Les associations binaires
Cas1 : Association Un-à-Un
Cas2 : Association Un-à-plusieurs (Maître-Esclave)
Cas 3 : Association Plusieurs-à-Plusieurs
DR. ELLes associations n-aires
MARGAE SAMIRA 54

14
19/03/2024

TRADUCTION D’UN MODÈLE ENTITÉ -ASSOCIATION EN MODÈLE


RELATIONNEL
Association binaire- cas1 : Association Un-à-Un (1):
Soient deux entités A et B reliées par une association AssAB
Cas1 : Cardinalité entité A 0, 1 ou 1, 1 et Cardinalité entité B 0, 1 ou 1, 1.
Pour ce type d’association deux traductions sont possibles :

Solution1 :
 Les deux entités et l’association seront transformées en une seule relation contenant les attributs des deux
entités ainsi que les attributs éventuels de l’association, la clé de l’entité A ou de l’entité B sera choisie
comme clé de la nouvelle relation.

 Cette solution est surtout utilisée dans le cas où les deux entités ont des cardinalités 1,1 qui ne sont pas
DR. EL MARGAE SAMIRA 55
sujettes à des modifications dans le temps

TRADUCTION D’UN MODÈLE ENTITÉ -ASSOCIATION EN MODÈLE


RELATIONNEL
Association binaire- cas1 : Association Un-à-Un (1):

Solution2 :
Les deux entités seront transformées en deux relations.
 Une de ces deux relations sera choisie et étendue par la liste des attributs éventuels de
l’association ainsi que de la clé de l’autre entité en tant que clé étrangère.
 Ce choix se base sur la séquence temporelle de création des entités. L'entité qui sera créée
en second lieu aura comme clé étrangère l'identifiant de l'entité créée en premier lieu.
 Cette solution est la plus adaptée dans le cas où une ou les deux cardinalités minimales
sont nulles.
DR. EL MARGAE SAMIRA 56

15
19/03/2024

TRADUCTION D’UN MODÈLE ENTITÉ -ASSOCIATION EN MODÈLE


RELATIONNEL
Association binaire- cas1 : Association Un-à-Un (1): Exemple 1

La relation livraison à comme clé étrangère


l’identifiant de commande car la création d’une
livraison survient après la création d’une commande
DR. EL MARGAE SAMIRA 57

TRADUCTION D’UN MODÈLE ENTITÉ -ASSOCIATION EN MODÈLE


RELATIONNEL
Association binaire- cas1 : Association Un-à-Un (1): Exemple 2

DR. EL MARGAE SAMIRA 58

16
19/03/2024

TRADUCTION D’UN MODÈLE ENTITÉ -ASSOCIATION EN MODÈLE


RELATIONNEL
Association binaire- cas1 : Association Un-à-Un (1): Exemple 3

DR. EL MARGAE SAMIRA 59

TRADUCTION D’UN MODÈLE ENTITÉ -ASSOCIATION EN MODÈLE


RELATIONNEL
Association binaire- cas2 : Association Un-à-plusieurs (Maître-Esclave)

 Cardinalité entité A (Maître) 0, N ou 1, N et Cardinalité entité B (Esclave) 0, 1 ou 1,1

 Les règles de traduction de ce type d’association sont les suivantes :

 L’entité Maître (Entité A) devient la relation Maître.


 L’entité Esclave (Entité B) devient la relation Esclave.
 L’identifiant de l’entité Maître devient attribut de la relation Esclave. Cet attribut est désigné
comme clé étrangère.
 Les attributs éventuels de l’association (AssAB) migrent vers la relation esclave et deviennent
ses attributs.
DR. EL MARGAE SAMIRA 60

17
19/03/2024

TRADUCTION D’UN MODÈLE ENTITÉ -ASSOCIATION EN MODÈLE


RELATIONNEL
Association binaire- cas2 : Association Un-à-plusieurs (Maître-Esclave)

DR. EL MARGAE SAMIRA 61

TRADUCTION D’UN MODÈLE ENTITÉ -ASSOCIATION EN MODÈLE


RELATIONNEL
Association binaire- cas2 : Association Un-à-plusieurs (Maître-Esclave)

DR. EL MARGAE SAMIRA 62

18
19/03/2024

TRADUCTION D’UN MODÈLE ENTITÉ -ASSOCIATION EN MODÈLE


RELATIONNEL
Association binaire- cas3 : Association Plusieurs-à-Plusieurs
 Cardinalité entité A 0, N ou 1, N et Cardinalité
entité B 0, N ou 1, N
 Les règles de traduction de ce type
d’association sont les suivantes
 Chaque entité (Entité A et Entité B) devient
une relation.
 L'association sera transformée aussi en une
relation ayant comme clé la concaténation des
deux clés issues des entités A et B. Les
attributs éventuels de l'association seront
stockés dans cette relation en tant qu'attributs.
DR. EL MARGAE SAMIRA 63

TRADUCTION D’UN MODÈLE ENTITÉ -ASSOCIATION EN MODÈLE


RELATIONNEL
Association binaire- cas3 : Association Plusieurs-à-Plusieurs

DR. EL MARGAE SAMIRA 64

19
19/03/2024

TRADUCTION D’UN MODÈLE ENTITÉ -ASSOCIATION EN MODÈLE


RELATIONNEL
Traduction des associations n-aires

Ce type d’association sera transformé en


une relation ayant comme liste d’attributs la
liste des clés des relations correspondantes
aux entités qui participent à cette
association en plus de ses attributs
éventuels. Une clé minimale sera choisie
parmi la liste des attributs ainsi constituée.

DR. EL MARGAE SAMIRA 65

TRADUCTION D’UN MODÈLE ENTITÉ -ASSOCIATION EN MODÈLE


RELATIONNEL
Traduction des associations n-aires

Dans la traduction d'un modèle conceptuel en


modèle relationnel, les associations n-aires,
se traduisent comme les associations
binaires [n,n], c'est à dire que chaque
association n-aire devient une relation de
même nom, dont les attributs sont les n clefs
étrangères des n entités reliées à
l'association et dont la clef primaire est
formée de ces n attributs.

Remarque: les cardinalités maximales valent


tous n. Ceci est obligatoire dans une association
DR. EL MARGAE SAMIRA 66
n-aire.
Remarque: on a toujours des cardinalités [?,n]

20
19/03/2024

TRADUCTION D’UN MODÈLE ENTITÉ -ASSOCIATION EN MODÈLE


RELATIONNEL
Traduction des associations n-aires
En réalité une association N-aire représente une entité reliée à n autres entités !

DR. EL MARGAE SAMIRA 67

TRADUCTION D’UN MODÈLE ENTITÉ -ASSOCIATION EN MODÈLE


RELATIONNEL
Traduction des associations n-aires
Dans la traduction d'un modèle conceptuel en modèle
relationnel, les associations n-aires, se traduisent
comme les associations binaires [n,n], c'est à dire que
chaque association n-aire devient une relation de
même nom, dont les attributs sont les n clefs
étrangères des n entités reliées à l'association et dont
la clef primaire est formée de ces n attributs.

DR. EL MARGAE SAMIRA 68

21
19/03/2024

ASSOCIATIONS RÉFLEXIVES

Une association réflexive peut être de type [n,n], [1,n], ou [1,1].


 Associations réflexives [n,n]
Elles peuvent avoir des propriétés et être symétriques ou non symétriques.
 Associations réflexives [n,n] symétriques
Exemple d’une association réflexive [n,n] symétrique :

 Elle est symétrique car, si un pays A est voisin d'un pays B, alors le pays B est nécessairement
voisin du pays A.
DR. EL MARGAE SAMIRA 69

ASSOCIATIONS RÉFLEXIVES

 Associations réflexives [n,n] non symétriques

Voici à présent une association réflexive [n,n] non symétrique :


 Si un matériel A fait partie d'un matériel B, alors B ne peut pas faire partie de A.
 Pour une relation réflexive asymétrique, il est d'usage d'indiquer le nom de l'association
sur un des traits et le nom de l'association inverse sur l'autre.

DR. EL MARGAE SAMIRA 70

22
19/03/2024

ASSOCIATIONS RÉFLEXIVES

 Associations réflexives [n,n] avec propriétés

Un exemple non symétrique :

Un exemple symétrique :

DR. EL MARGAE SAMIRA 71

ASSOCIATIONS RÉFLEXIVES

 Associations réflexives [1,n]


Elles sont nécessairement non symétriques.
Exemple :

DR. EL MARGAE SAMIRA 72

23
19/03/2024

ASSOCIATIONS RÉFLEXIVES

 Associations réflexives [1,1]


- Elles peuvent être symétriques ou non symétriques.

- Et voici un exemple d'association réflexive [1,1] asymétrique :

DR. EL MARGAE SAMIRA 73

TRADUCTION DES ASSOCIATIONS RÉFLEXIVES EN RELATIONS

 Traduction des associations réflexives [n,n]

Une association réflexive [n,n] sur une entité E est traduite en une relation de même nom
avec deux clefs étrangères. L'une d'elles porte le nom de l'identifiant de l'entité et l'autre, le
nom de l'association. La clef primaire de cette relation est constituée de ces deux attributs.

sera traduit en :

DR. EL MARGAE SAMIRA 74

24
19/03/2024

TRADUCTION DES ASSOCIATIONS RÉFLEXIVES EN RELATIONS

 Traduction des associations réflexives [n,n]

Une association réflexive [n,n] sur une entité E est traduite en une relation de même nom
avec deux clefs étrangères. L'une d'elles porte le nom de l'identifiant de l'entité et l'autre, le
nom de l'association. La clef primaire de cette relation est constituée de ces deux attributs.

DR. EL MARGAE SAMIRA 75

TRADUCTION DES ASSOCIATIONS RÉFLEXIVES EN RELATIONS

 Traduction des associations réflexives [1,n]


 Une association réflexive [1,n] sur une entité est traduite en une clef étrangère dans la
relation représentant cette entité.
 Le nom de cette clef étrangère est celui de l'association si c'est le nom de l'association qui
étiquette le trait de cardinalité maximale 1

DR. EL MARGAE SAMIRA 76


seront traduit en :

25
19/03/2024

TRADUCTION DES ASSOCIATIONS RÉFLEXIVES EN RELATIONS

 Traduction des associations réflexives [1,1]


 Une association réflexive [1,1] sur une entité est traduite en une clef étrangère dans la
relation représentant cette entité. Le nom de cette clef étrangère est celui de
l'association.
Par exemple :

sera traduit en :

DR. EL MARGAE SAMIRA 77

26

Vous aimerez peut-être aussi