Vous êtes sur la page 1sur 29

Schéma conceptuel vs Schéma relationnel

«La démarche purement relationnelle n’est


envisageable que dans le cas des petits problèmes. La
démarche la plus courante est de produire, dans un
premier temps, une abstraction des données exprimée
dans un modèle de représentation autre que le
relationnel puis de transformer cette abstraction en
une structure relationnelle » [6].

Les Systèmes de Gestion des Bases de Données


3. Introduction au modèle relationnel © Faten Labbene Ayachi, 2014 - 2015 2
Schéma conceptuel → Schéma relationnel

Entité forte ou faible Relation statique


Identificateur Clé primaire
Propriété Attribut
CIF binaire Clé étrangère dans l’entité
propriétaire avec les
propriétés de la relation
Autre CIF Relation dynamique avec
Réduction de la clé
Tout autre association Relation dynamique
« Ce mécanisme de traduction est incapable d’inventer »
Les Systèmes de Gestion des Bases de Données
3. Introduction au modèle relationnel © Faten Labbene Ayachi, 2014 - 2015 3
Schéma conceptuel → Schéma relationnel

Ce passage est très utile lors de la conception d’un


logiciel, pour concrétiser un schéma conceptuel.

Toutes les relations sont en 3ème Forme normale (3FN)

Exercice 2 : Déduire le schéma relationnel à partir


du schéma conceptuel de l’énoncé 1.
Spécifier graphiquement les CIR.

Les Systèmes de Gestion des Bases de Données


3. Introduction au modèle relationnel © Faten Labbene Ayachi, 2014 - 2015 4
Schéma conceptuel → Schéma relationnel

E1
R E2
a
b p1 0,n k
(1,1)
c p2 l

E1 (a, b, c) E1 (a, b, c, k, p1, p2)


E2 (k, l) → E2 (k, l)
R (a, k, p1, p2)

Les Systèmes de Gestion des Bases de Données


3. Introduction au modèle relationnel © Faten Labbene Ayachi, 2014 - 2015 5
Schéma conceptuel → Schéma relationnel

Exercice 3 : Déduire le schéma relationnel correspondant


à chacun des cas suivants.

A B
R
1,1 1,1
p

A B
R
1,1 0,1
p

A B
R
0,1 1,n
p

Les Systèmes de Gestion des Bases de Données


3. Introduction au modèle relationnel © Faten Labbene Ayachi, 2014 - 2015 6
Schéma conceptuel → Schéma relationnel

Exercice 4 : Déduire le schéma relationnel correspondant


à chacun des cas suivants.

Wagon Train
n°wagon 1,1 appartient n°train
0,n
type dateFab

Personne Voiture
n°personne immat
0,n achète 0,1 couleur
nom
prénom marque

Les Systèmes de Gestion des Bases de Données


3. Introduction au modèle relationnel © Faten Labbene Ayachi, 2014 - 2015 7
Schéma conceptuel  Schéma relationnel
Ce passage est moins fréquent ne servant qu’en cas de réutilisation
de composants logiciels existants « Reverse Ingeneering »

Exercice 5 : Déduire le schéma conceptuel à partir du schéma


relationnel ci-dessous.

PILOTE = (PL# : NUMERO, PLnom : NOM, Adr : ADRESSE)

VOL = (VOL# : VNUM, PLnum : NUMERO, AV# : AVNUM,


VD : VILLE, VA : VILLE, HD : HEURE,
HA : HEURE)

AVION = (AV# : AVNUM, …)


Les Systèmes de Gestion des Bases de Données
3. Introduction au modèle relationnel © Faten Labbene Ayachi, 2014 - 2015 8
Contraintes d’intégrité structurelles
Elles constituent un certain nombre de contrôles devant
être satisfaits par les données de la relation.

Contrainte conceptuelle 1) Unicité de la clé


2) Contrainte de références
Contraintes que doit
3) Contrainte d’entité
vérifier le SGBD
4) Contrainte de domaine
Elles sont nécessaires à la mise en œuvre du modèle

Les Systèmes de Gestion des Bases de Données


3. Introduction au modèle relationnel © Faten Labbene Ayachi, 2014 - 2015 9
C.I. structurelles Unicité de la clé

Il ne peut exister deux fois le même tuple dans une relation

Clé PRIMAIRE = ensemble d’attributs


minimal dont la connaissance permet
d’identifier un tuple unique de la relation

& DOMAINE PRIMAIRE

& clés CANDIDATES

Les Systèmes de Gestion des Bases de Données


3. Introduction au modèle relationnel © Faten Labbene Ayachi, 2014 - 2015 10
C.I. structurelles Contrainte de référence (suite)
NUMERO est domaine primaire
PL# dans PILOTE est clé primaire
Plnum dans VOL est CLE ETRANGERE

« La valeur de la clé étrangère doit faire référence à


un tuple existant »
(contrainte forte ou faible?)

Cette contrainte impacte sur les opérations de mise à jour


« Un vol n’a de sens que si le pilote affecté sur ce vol EXISTE »
Les Systèmes de Gestion des Bases de Données
3. Introduction au modèle relationnel © Faten Labbene Ayachi, 2014 - 2015 11
C.I. structurelles Contrainte de référence (suite)

Cette contrainte impacte sur les opérations de mise à jour

Les contraintes de référence sont des liens forts qui


rendent les relations dépendantes

Définitions
Relation statique ➔ ne renferme pas de clé étrangère
Relation dynamique ➔ renferme au moins une clé étrangère

Les Systèmes de Gestion des Bases de Données


3. Introduction au modèle relationnel © Faten Labbene Ayachi, 2014 - 2015 12
C.I. structurelles Contrainte d’entité

« La valeur de tout attribut participant à une clé primaire


doit être non NULL ».

valeur NULL = valeur inconnue ou inapplicable

Les Systèmes de Gestion des Bases de Données


3. Introduction au modèle relationnel © Faten Labbene Ayachi, 2014 - 2015 13
C.I. structurelles Contrainte de domaine
Elle concerne le contrôle syntaxique et sémantique d’une donnée
quelconque et fait référence à la définition de domaine

DOMAINE D = Ensemble de valeurs caractérisé


par un nom
SALAIRE = réel
NUMERO = entier
VILLE = {‘Monastir’, ‘Tunis’,
‘Tabarka’, ‘Djerba’}

Théorie des ensembles + sémantique


Les Systèmes de Gestion des Bases de Données
3. Introduction au modèle relationnel © Faten Labbene Ayachi, 2014 - 2015 14
Concepts structuraux de base Domaine

DOMAINE

Nom Type Format

DATE Chaîne jj-mm-aa


de caractères

--- Un domaine est plus qu’un type


--- Les valeurs sont atomiques
Les Systèmes de Gestion des Bases de Données
3. Introduction au modèle relationnel © Faten Labbene Ayachi, 2014 - 2015 15
Concepts structuraux de base Domaine
Un employé peut-il avoir le même nom qu’un département?

nomDépartement nomEmployé

DEPTNOM EMPNOM
Chaîne Chaîne
de caractères de caractères

On interdit ainsi la comparaison entre nomDépartement et


nomEmployé

Les Systèmes de Gestion des Bases de Données


3. Introduction au modèle relationnel © Faten Labbene Ayachi, 2014 - 2015 16
Concepts structuraux de base Domaine

Exercice 6 : Quel est le nombre de domaines distincts


dans l’énoncé ORGANISATION (énoncé 2)?

Les Systèmes de Gestion des Bases de Données


3. Introduction au modèle relationnel © Faten Labbene Ayachi, 2014 - 2015 17
Concepts structuraux de base Domaine

Produit cartésien d’un ensemble de domaine


D1 x D2 x … x Dn = Ensemble de vecteurs
<v1, v2, …, vn>

VILLE x VILLE = {(‘Monastir’,‘Monastir’)


(‘Monastir’,‘Tunis’)
(‘Monastir’,‘Tabarka’)
(‘Monastir’,‘Djerba’)
… }
Les Systèmes de Gestion des Bases de Données
3. Introduction au modèle relationnel © Faten Labbene Ayachi, 2014 - 2015 18
Concepts structuraux de base Relation

RELATION = Sous ensemble du produit cartésien


d’une liste de domaines, pas
nécessairement distincts, caractérisé
par un nom

R  D1 x D2 x D3 x D4 x D5

Exp. DESTINATION  VILLE x VILLE

Les Systèmes de Gestion des Bases de Données


3. Introduction au modèle relationnel © Faten Labbene Ayachi, 2014 - 2015 19
Concepts structuraux de base Relation

Représentations des relations

Diagramme
Relations binaires

Graphe X X X

X X X ….
X X X
R1 R2 Relations qques

Les Systèmes de Gestion des Bases de Données


3. Introduction au modèle relationnel © Faten Labbene Ayachi, 2014 - 2015 20
Concepts structuraux de base Relation
Exp. DESTINATION  VILLE x VILLE

Monastir Tunis
Monastir Djerba
Extension
Djerba Tunis
de la relation
Tunis Monastir
Djerba Tabarka

La représentation tabulaire des relations est simple à appréhender


par les non mathématiciens

Les Systèmes de Gestion des Bases de Données


3. Introduction au modèle relationnel © Faten Labbene Ayachi, 2014 - 2015 21
Concepts structuraux de base Relation

Monastir Tunis
Vecteur d’une
Monastir Djerba Relation ou TUPLE
Djerba Tunis
Tunis Monastir
Djerba Tabarka

Colonne d’une relation


Les Systèmes de Gestion des Bases de Données
3. Introduction au modèle relationnel © Faten Labbene Ayachi, 2014 - 2015 22
Concepts structuraux de base Attribut
ATTRIBUT = Colonne d’une relation caractérisée par
un nom

Ville_dep Ville_arr
Monastir Tunis
… …

➔ Distinguer les colonnes sans utiliser un index


➔ Rendre l’ordre des colonnes sans importance
➔ Permettre plusieurs colonnes de même domaine
Les Systèmes de Gestion des Bases de Données
3. Introduction au modèle relationnel © Faten Labbene Ayachi, 2014 - 2015 23
Concepts structuraux de base Schéma relationnel

SCHEMA DE LA RELATION =
Nom de la relation suivi de la liste des attributs et de
la définition de leurs domaines

Destination (Ville_dep : VILLE ; Ville_arr : VILLE)

Intention
de la relation

Les Systèmes de Gestion des Bases de Données


3. Introduction au modèle relationnel © Faten Labbene Ayachi, 2014 - 2015 24
Schéma relationnel

Schéma d’une base de données relationnelle


=
Définition des domaines
+
Schémas des relations
+
Définition des vues

Les Systèmes de Gestion des Bases de Données


3. Introduction au modèle relationnel © Faten Labbene Ayachi, 2014 - 2015 25
Concepts structuraux de base Intension & Extension
˶ « Le structure de la relation ou INTENTION est capturée
dans le schéma de la relation …
Le schéma décrit des propriétés communes et
invariantes des tuples de la relation »

˶ « L’ EXTENSION de la relation est une vue des tuples


qu’elle contient à un instant donné. C’est un état de la
relation qui fait suite à des manipulations »

Les Systèmes de Gestion des Bases de Données


3. Introduction au modèle relationnel © Faten Labbene Ayachi, 2014 - 2015 26
Synthèse sur les apports du
modèle relationnel

Il est le plus utilisé par les SGBDs d’aujourd’hui car :

• il est le plus simple


• il présente des structures uniformes basées sur la
théorie des relations elle même construite à partir
de la théorie des ensembles
• ...

Les Systèmes de Gestion des Bases de Données


3. Introduction au modèle relationnel © Faten Labbene Ayachi, 2014 - 2015 27
Objectifs atteints du modèle relationnel

1 - Haut degrés d’indépendance entre programmes


d’applications et la représentation interne des données

Concept de vue

2 - Une base solide pour traiter les problèmes de cohérence


et de redondance des données

Concept de relation normalisée


& Contraintes d’intégrité
Les Systèmes de Gestion des Bases de Données
3. Introduction au modèle relationnel © Faten Labbene Ayachi, 2014 - 2015 28
Objectifs atteints du modèle relationnel

3 - Permettre le développement de langages de


manipulation de données non procéduraux basés sur
des théories solides

Algèbre relationnelle
& Langages assertionnels basés sur la
logique du premier ordre

Les Systèmes de Gestion des Bases de Données


3. Introduction au modèle relationnel © Faten Labbene Ayachi, 2014 - 2015 29
Résultats atteints

Le modèle relationnel &


son langage SQL
sont devenus un standard (1986)
pour la description et la manipulation des
bases de données

Le modèle relationnel est devenu un


modèle extensible capable de modéliser
et de manipuler des données complexes
Les Systèmes de Gestion des Bases de Données
3. Introduction au modèle relationnel © Faten Labbene Ayachi, 2014 - 2015 30