les bases de données relationnelles
Embed Size (px)
TRANSCRIPT

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 1/155
1
Les bases de Données
Relationnelles

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 2/155
2
Chapitre 1 : Règles de passage du Diagramme de
Classes au Modèle Relationnel

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 3/155
3
1)Cas des entités:
Pour chaque entité du diagramme de classes,une table est crée dans le modèle relationnel.Les attributs de l'entité deviennent les attributs
de la table ,et dans le cas d'une entité forte, sonidentifiant simple ou composé, devient la cléprimaire de la table.
Il existe deux types d'entités faibles dans un
diagramme de classes : les entités d'associationet les entités représentant un composant d'uneentité composite.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 4/155
4
Diagramme de classes comportant une entité
d’association:

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 5/155
5
Le modèle relationnel dérivé comporte troistables dont une table, Article commandé,
possède une clé primaire composéeobligatoirement des clés primaires des deuxautres tables.
Ébauche du modèle relationnel dérivé du modèle

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 6/155
6
La table dérivée de l'entité d'association est une tablefille qui doit être liée à toutes les tables dérivées desautres entités associées qui agiront comme tablesmères.
Chaque association portera une multiplicité 1..1 du côtéde la table mère et quant aux multiplicités du côté de latable fille, elles sont reprises du diagramme de classes.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 7/1557

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 8/1558
1-2) Dérivation à partir des entités d’une composition
Une table sera dérivée du composite et uneautre sera dérivée du composant. Cette dernière
aura comme clé primaire la combinaison de
l'identifiant du composite et de l'identifiantpropre du composant.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 9/155
9
Diagramme de classes comportant une composition

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 10/155
10

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 11/155
11
2) Associations Binaires:
Dans un tel cas, la dérivation de la clé étrangère repose sur l'analyse
des multiplicités minimales de l'association. Cela consiste à établir sila participation des occurrences à l'association est obligatoire d'un
côté ou de l'autre ou des deux à la fois. Si la participation est obligatoire des deux côtés de l'association
(multiplicités minimales 1 de part et d'autre), l'une ou l'autre des tablesdérivées des entités peut agir comme table mère.
Cependant, si une seule des deux entités est associée à une
troisième, on choisira comme table fille celle dérivée de l'entité quicomporte une deuxième association.
Si toutes deux sont associées à une autre, on choisit comme table fillecelle qui possède une clé primaire composée.
2-1) Associations Binaires un à un:

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 12/155
12
Association binaire un à un avec participation
obligatoire de part et d’autre

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 13/155
13
Pour ce modèle, nous faisons l’hypothèse que l’entité
Paiement est associée par ailleurs à l’entité Client (nonillustrée). La table fille sera donc Paiement, la table mèresera Reçu, et la clé primaire de la table mère, No reçu,est reproduite dans la table fille à titre de la clé étrangère.Sans cette hypothèse, la table fille aurait tout aussi bienpu être Reçu.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 14/155
14
Diagramme de classes avec association un à un,
et une participation optionnelle d’un coté

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 15/155
15
L'association un à un étant optionnelle côté
Carte de crédit, la table dérivée de cette entitéest considérée comme table fille et la clé primairede la table mère Client, soit No client, est copiéedans la table fille comme clé étrangère.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 16/155
16
Modèle relationnel dérivé

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 17/155
17
2-2) Association binaire un à plusieurs
la table dérivée de l'entité du côté de la multiplicitémaximale plusieurs (*) est considérée comme latable fille. En conséquence, une copie de la cléprimaire de la deuxième table, la table mère, est
déposée dans la table fille à titre de clé étrangère.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 18/155
18
Modèle conceptuel avec association binaire un à plusieurs

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 19/155
19
Modèle relationnel dérivé

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 20/155
20
2-3) Association binaire plusieurs à plusieurs:
Une association plusieurs à plusieurs sans entité d'association donnelieu à une table fille comportant comme clé primaire la combinaison des
clés primaires des tables mères. Chaque association portera une
multiplicité 1..1 du côté de la table mère et quant aux multiplicités du côté
de la table fille, elles sont reprises du diagramme de classes .
Magasin
N° agenceN° civiqueRue
VilleCode postalN° téléphone
Employé
N° employéNom employéPrénom employéSalaire employé1..* 1..*

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 21/155
21
Modèle relationnel dérivé d’une association binaireplusieurs à plusieurs :

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 22/155
22
3) Priorité d’application des règles de dérivation Qu'arrive-t-il si les deux mêmes entités sont associées avec des
associations de natures différentes ? Par exemple à la fois par
une association du type un à un et une autre de type un à
plusieurs. Réponse : il n'y a pas de priorité d'application des
règles : Chaque association donne lieu à la création de clés
étrangères, dans la même table ou dans les deux tables.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 23/155
23
Plus d’une association impliquant les même entités

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 24/155
24
Modèle déviré d’association impliquant les mêmes
entités

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 25/155
25
4) Dérivation réflexive
La dérivation d'une association réflexive
reprend les règles évoquées en les
spécialisant pour tenir compte du fait qu'une
entité est associée à elle-même.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 26/155
26
Cas 1: L'association réflexive comporteune entité d'association
L'entité d'association donne lieu à une table filleassociée à la table mère dérivée de la seule entitéen cause. La table dérivée de l'entité d'association
comporte les attributs de cette dernière aveccomme clé primaire deux exemplaires de la cléprimaire de la table mère, les exemplaires portentun nom différent pour éviter toute redondance.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 27/155
27
Modèle conceptuel avec association réflexive et
entité d'association

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 28/155
28
Le résultat de la dérivation du modèlerelationnel est donné à la figure. La table filleMariage est drivée de l'entité d'association. Ellecomporte une clé primaire composée des deuxnuméros matricules des personnes contractant unmariage. Chaque matricule porte un nom d'attributdifférent.
Modèle relationnel dérivé

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 29/155
29
Cas 2: L'association réflexive est dutype un à un ou un à plusieurs
Dans ce cas une seule table est dérivée et elle comporteune clé étrangère. Celle-ci est un double de sa clé primaire
qui doit porter un nom différent. Les multiplicités de
l'association au modèle conceptuel sont reprises
intégralement dans le modèle relationnel dérivé.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 30/155
30
Modèle relationnel, dérivé du modèle conceptuel

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 31/155
31
Modèle conceptuel, sans entité d’association, avec
association réflexive un à plusieurs
Modèle relationnel dérivé du modèle conceptuel

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 32/155
32
Cas 3: L'association réflexive est du typeplusieurs à plusieurs
Une association réflexive plusieurs à plusieurs esttraitée comme une association réflexive comportantune entité d'association. Une table doit être crééepour assurer une liaison plusieurs à plusieurs sur la
même table. Cette table n'a pas d'attribut propre.Sa clé primaire est une combinaison de deuxexemplaires de la clé primaire de la table dérivéede l'entité.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 33/155
33
La figure modélise la descendance d'unepersonne. Une personne descend de plusieurs
personnes et par ailleurs possède plusieursdescendants.
Modèle conceptuel, sans entité d'association, avec association réflexive plusieurs à plusieurs

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 34/155
34
Modèle relationnel dérivé

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 35/155
35
5) Associations de degré supérieur
Toute association de degré supérieur donne lieu à une table qui
s'ajoute aux tables dérivées des entités associées.
S'il s'agit d'une association de degré supérieur qui comporte une
entité d'association, les règles vues précédemment pour la conversion
d'une entité d'association sur une association binaire s'appliquent ;
chaque entité associée devient une table mère; l'entité d'association devient une table fille. Les clés primaires des
tables mères qui sont copiées dans la table fille sont toutes desattributs considérés comme clés étrangères.
Les multiplicités placées du côté de la table fille sont toutes 0..*,et les
multiplicités du côté des tables mères sont systématiquement 1..1.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 36/155
36
Modèle conceptuel avec entité d'association sur une association de degré supérieur

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 37/155
37
Modèle relationnel dérivé du modèle

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 38/155
38
Diagramme de classes avec une association de degré supérieur

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 39/155
39
Modèle relationnel dérivé du modèle

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 40/155
40
6) Association d’héritage:
Les tables dérivées d'une association ou de
plusieurs associations d'héritage rattachées au mêmesupertype seront de natures fort variées selon qu'il y aprésence ou non de contraintes inter associations dansle modèle conceptuel.
Nous allons illustrer à tour de rôle chaque situation àl'aide d'un exemple. Toutes les figures montrent àgauche un diagramme de classes avec une ou desassociations d'héritage et à droite le modèle relationnel
résultant.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 41/155
41
Cas 1 : aucune contrainte

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 42/155
42
.
Cas 2: Contrainte d’exclusion

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 43/155
43
Cas 3:Contrainte de totalitéUne contrainte de totalité spécifie qu'uneoccurrence du supertype doit avoir les attributsde tous ses sous-types et donc être de tous les
sous-types à la fois. Deux attributs booléens,Poste client? et Serveur?, permets d'établir lessous-types auxquels une ligne de la table dérivéeappartiens.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 44/155
44
Cas 4: Contrainte de partition
Une contrainte de partition stipule qu'une occurrencedu supertype doit appartenir obligatoirement à un des
sous-types. D'où la présence d'un attribut discriminantobligatoire, Sous-type, qui rattache l'occurrence à un
des deux sous-types admissibles.
Et d d

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 45/155
Etude de cas: Traduire le diagramme de classe suivant en modèle logique correspondant
45

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 46/155
46
Chapitre 2 : Introduction aux bases de données

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 47/155
47
I – Définitions :
Une base de donnée est une collectiondes données inter-reliées. C'est une entité
cohérente logiquement et véhiculant unecertaine sémantique.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 48/155
48
Un système de Gestion De Bases De données(SGBD) est un ensemble de programmes qui
permettent à des utilisateurs de créer etmaintenir une base de données.
Les activités supportées sont la définition d'unebase de données (spécification des types de
données à stocker), la construction d'une basede données (stockages des donnéesproprement dites) et la manipulation desdonnées (principalement ajouter, supprimer,
retrouver des données). Les SGBD commerciaux les plus connus sont
Oracle , Sybase, lnformix et DB2.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 49/155
49
Un SGBD sépare la partie description desdonnées, des données elles mêmes. Cette
description est stockée dans un dictionnaire desdonnées (également géré dans le SGBD) etpeut être consultée par les utilisateurs.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 50/155
50
Un modèle de données est un ensemble deconcepts permettant de décrire la structured'une base de données.
La plupart des modèles de données incluent desopérations permettant de mettre à jour etquestionner la base. Le modèle de données leplus utilisé est le modèle relationnel .

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 51/155
51
Un schéma de base de données (oucompréhension ou intension) est la descriptiondes données à gérer. Il est conçus dans laphase de spécialisation et peut être évolutif
(pratiquement statique). Une extension d'une base de données
correspond aux données de la base à un instantdonné. Par définition cet état est dynamique.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 52/155
52
II- Fonctionnalités:
Nous donnons ici les caractéristiquessouhaitables des SGBD qui ne sont pas
forcément prises en compte par les SGBDCommerciaux.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 53/155
53
1- Contrôler la redondance d'informations
La redondance d'informations pose différentsproblèmes (coût en temps, coût en volume etrisque d'incohérence entre les différentes
copies). Un des objectifs des bases de données est
de contrôler cette redondance, voire de la
supprimer, en offrant une gestion unifiée desinformations complétées par différentes vuespour des classes d'utilisateurs différents.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 54/155
54
2- Partage des données
Une base de données doit permettre d'accéder à lamême information par plusieurs utilisateurs enmême temps. Le SGBD doit inclure un mécanismede contrôle de la concurrence basée sur destechniques de verrouillage des données (pour éviter
par exemple qu'on puisse lire une information quiest en train de se mettre à jour).
Le partage des données se fait également par la
notion de vue utilisateur qui permet de définir pourchaque classe d'utilisateurs la portion de la ou dedonnées qui l'intéresse (et dans la forme quil'intéresse).

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 55/155
55
3- Gérer les autorisations d'accès
Une base de données étant Multi-Utilisateurs, sepose le problème de confidentialité desdonnées. Des droits doivent être gérés sur les
donnée de lecture, mise à jour, création, ... quipermettent d'affiner la notion d’ utilisateur.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 56/155
56
4- Offrir des interfaces d'accès multiples
Un SGBD doit offrir plusieurs interfacesd'accès, correspondant aux différents typesd'utilisateurs pouvant s'adresser à lui.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 57/155
57
On trouve des interfaces orientées utilisateurfinal (langages de requêtes déclaratifs commeSQL avec mise en oeuvre graphique, interfacede type formulaires ... ) ou bien orientées
programmeurs d'applications (interface avec deslangages de programmation classiques.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 58/155
58
5- Représenter des relations complexes entre
les données
Un SGBD doit permettre de représenter desdonnées inter reliées de manière complexe.Cette facilité s'exprime à travers le modèle dedonnées sous jacent au SGBD. Chaque modèlede données offre ses propres concepts pour
représenter les relations.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 59/155
59
6- Vérifier les contraintes d'intégrité
Un schéma de base de données se composed'une description des donnée et de leursrelations ainsi que d'un ensemble de contraintesd'intégrité.
Une contrainte d'intégrité est une propriété del'application à modéliser qui renforce la
connaissance que l'on en a.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 60/155
60
On peut classifier les contraintes d'intégrité, encontraintes structurelles ( exemple : un employéa un chef et un seul ) et contraintes dynamiques( exemple : un salaire ne peut diminuer).
Les SGBD commerciaux supportentautomatiquement un certain nombre decontraintes structurelles, mais ne prennent pasen compte les contraintes dynamiques (ellesdoivent être codées dans les programmesd'application).

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 61/155
61
7 - Assurer la sécurité et la reprise après panne
Une base de données est souvent vitale dans lefonctionnement d'une organisation, et il n'est pastolérable qu'une panne puisse remettre encause son fonctionnement de manière durable.Les SGBD fournissent des mécanismes pourassurer cette sécurité.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 62/155
62
En ce qui concerne les risques liés aux pannesdisques, les SGBD s'appuient sur unmécanisme de journalisation qui permet de
régénérer une base de donnéesautomatiquement à partir d'une version desauvegarde et du journal des mouvements.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 63/155
63
III- Architecture Iogique d'un SGBD
Elle est définie sur trois niveaux:
niveau interne ou physique: décrit le modèlede stockage des données et fonctions d'accès

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 64/155
64
modèle conceptuel ou logique: décrit lastructure de la base de données globalement àtous les utilisateurs (limite la redondance).
Le schéma conceptuel est produit par uneanalyse de l'application à modéliser et parintégration des différentes vues utilisateurs. Ceschéma décrit la structure de la base
indépendamment de son implantation

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 65/155
65
niveau externe: correspond aux différentesvues des utilisateurs. Chaque schéma
externe donne une vue sur le schémaconceptuel à une classe d'utilisateurs.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 66/155
66
Le SGBD doit être capable de faire destransformations entre chaque niveau, de
manière à transformer une requête exprimée enterme du niveau externe requête du niveauconceptuel puis du niveau physique.(voirschéma)

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 67/155
67
Schémaexterne
Schémaexterne
Schémaexterne
Schémaconceptuel
Schémaphysique
Correspondanceexterne/ conceptuel
CorrespondanceConceptuel/physique

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 68/155
68
Chapitre 3 : Le Modèlerelationnel

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 69/155
69
I- INTRODUCTION :
Le modèle relationnel a été inventé par CODD à IBMSan José .
Au modèle relationnel est associé une théorie qui ne
peut être séparée du modèle: La théorie de lanormalisation des relations.
Cette théorie a pour but d'éliminer les comportementsanormaux des relations lors des mises à jour
Elle permet aussi d'éliminer les données redondantes etde mieux connaître les relations sémantiques entredonnées.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 70/155
70
II- LES CONCEPTS DE BASE DU MODELE
Notion: Domaine (DOMAIN)Ensemble de valeurs
Le concept de relation découle directement de lathéorie des ensembles. Nous allons en rappelerla définition qui nécessite tout d'abord
l'introduction de la notion de domaine.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 71/155
71
Exemples: Le domaine des entiers
E={0,±1, ±2,…. ± ∞ }
-Le domaine des booléens {0,1} Le domaine des couleurs du drapeau marocain
composé des {Rouge, Vert}

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 72/155
72
Rappelons que le produit cartésien d'unensemble de domaines Dl, D2 ... Dn, notéDl x ... x Dn, est l'ensemble des n-uplets ou
tuples <VI, V2, ... Vn> tels que Vi €Di. Parexemple, le produit cartésien des domainesDl = {ROUGE, VERT} et D2= {O, l} est composéde quatre tuples.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 73/155
73
ROUGE 0
ROUGE 1
VERT 0
VERT 1

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 74/155
74
On peut maintenant introduire la notion derelation:
Notion 2: Relation (RELATION) Sous-ensemble
du produit cartésien d'une liste de domaines.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 75/155
75
Une relation est généralement caractérisée parun nom.
Par exemple, à partir des domainesDl={ROUGE, VERT} etD2{O, l} On peutcomposer la relation V AL

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 76/155
76
VAL D1 D2
ROUGEROUGE
VERT
01
0

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 77/155
77
Notion 3: Attribut (A TTRIBUTE) Colonne
d'une relation caractérisée par un nom.
En première approche, un schéma de relation est le nomde la relation suivi de la liste des attributs avec leurs
domaines. Ainsi à toute relation, il est possibled'associer un schéma de relation qui représente (aumoins en partie la relations, alors que le tableau avec les
tuples représente un extension possible.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 78/155
78
Par exemple, une relation décrivant des voitureset comportant les attributs: NV,MARQUE,TYPE, PUISSANCE, COULEUR, aura pourschéma:
Voiture (NV : entier, MARQUE: caractère (l0),TYPE: caractère (4), PUISSANCE: entier,COULEUR: char(15).

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 79/155
79
Afin de simplifier, on ne précise en général pasles domaines. On peut maintenant introduire la
notion de base de données relationnelle.
Notion 4 : Base de données relationnelles ( Relational database)Base de donné dont le schéma est une ensemble de schémas derelations dont les occurrences sont des tuples de ces relations.
III) L'approche par décomposition

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 80/155
III) L'approche par décomposition
L'approche par décomposition permet deconcevoir des schémas relationnels tend à partird'une relation composée de tous les attributs,appelée la relation universelle, et à décomposercette relation en sous relations qui ne souffrirontpas d’anomalies
La compréhension de la théorie de la
décomposition des relations nécessite laconnaissance de deux opérationsélémentaires:La projection et la jointure.
80
a)La projection

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 81/155
a)La projection
La projection est l'opération qui consiste à
supprimer les attributs d'une relation et à
éliminer les tuples en double qui risquent
d'apparaître dans la nouvelle version
obtenue. Elle est représentée par π
81
Exemple:

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 82/155
p
82
INTERVENIR
Identité Employé Type Intervention Marque
Tussier Dépannage Peugeot
Tussier Dépannage Citroën
Martin Electricité Citroën
Martin Electricité Renault
Martin Mécanique FiatMartin Mécanique Ford
Piquard Carrosserie Fiat
Piquard Carrosserie Ford
Piquard Alarme Fiat
π identitéemplooyé (INTERVENIR)
TussierMartin
Piquard
π typeintervention (INTERVENIR)
DépannageElectricité
Mécanique
Carrosserie
Alarme
Soit la relation intervenir(identité employé, type intervention, marque).On veut déterminer la liste des noms des employés ainsi que la liste des typesd’intervention.
b)jointure

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 83/155
b)jointure
L'opération inverse de la projection est la jointurenaturelle ou simplement jointure. La jointure naturelle dedeux relations R et S, de schémas respectifs R (Al, A2,... An) et S (BI, B2, ... Bp) est une relation ayant pourattributs l'union des attributs de R et S, soit:
{AI,A2, ... An} U {BI,B2, .. Bp}
et pour tuples tous ceux obtenus par concaténation destuples de R et S ayant mêmes valeurs pour les attributsde même nom.
83

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 84/155
84
Exemple de jointure naturelle de deux relations R et S,que l'on note R∞S
R Marque COULEUR
RENAULT
PEUGEOTCITROEN
RENAULT
ROUGE
VERTEBLEUE
VERTE
S Couleur puissance
Rouge
Verte
Bleue
Bleue
Verte
6
9
2
5
6
R∞S Marque Couleur puissance
RENAULT
PEUGEOT
PEUGEOT
CITROEN
CITROEN
RENAULT
RENAULT
Rouge
Verte
Verte
Bleue
Bleue
Verte
Verte
6
9
6
2
5
9
6
Etude de cas :

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 85/155
85
NVMARQUE TYPE PUIS COUL N°CIN NOM PREN DATE PRIX
4200-12 1
3001-11 1
800-1 2
1001-2 7
400-2 2
RENAULT
PEUGEOT
CITROEN
CITROEN
RENAULT
R12TS
504
2CV
AM18
R18B
6
9
2
5
9
ROUGE
VERTE
BLEUE
BLEUE
VERTE
Q 1019
Q 1019
I 9003
I 9003
L 8720
Hassouni
Hassouni
Karimi
Karimi
LAMALIF
SAID
SAID
FARID
FARID
HAMZA
10.2.75
11.6.80
20.4.76
20.8.80
11.9.81
10.000
50.000
5.000
20.000
25.000
Le Tableau suivant représente les données relatives aux personnesqui possèdent des véhicules :
1) Enumérer et résumer tous les problèmes que cette représentation de
données semble poser.2) En vous basant sur l’opération de projection, décomposer la relation
représentée par le tableau en d’autres relations ?
3) Comment retrouver toutes les données à partir de ces relations?

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 86/155
86
Chapitre 4: Dépendancesfonctionnelles et Normalisation

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 87/155
87
La notion de dépendance fonctionnelle futintroduite par CODD afin de caractériser desrelations qui peuvent être décomposées sansperte d‘informations, et pour déterminer pourchaque valeur de l’identifiant ,une seule
occurrence de la relation .
Un attribut (ou groupe d'attributs) Y dépendfonctionnellement d'un attribut (ou groupe
d'attributs) X, si, étant donné une valeur de X illui correspond une valeur unique de Y (et ceciquelque soit l'instant considéré)

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 88/155
88
A titre d'exemple:soit la relation
Voiture(Nv,couleur,type,marque ,puissance)
Dans cette relation on a les dépendances
fonctionnelles suivantes: NV-->COULEUR
TYPE-->MARQUE
TYPE-->PUISSANCE
(Type. Marque) ->PUI SSANCE

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 89/155
89
Par contre les dépendances fonctionnellessuivantes sont inexistantes:
PUISSANCE---/--->TYPE TYPE---/ --->COULEUR

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 90/155
90
2. Propriétés des dépendances fonctionnelles
Les DF obéissent à plusieurs règles d'inférencetriviales.
1.Réflexivité : Y C X ==> x-> y ; cette règle stipule que tout
ensemble d'attributs détermine lui-même ou unepartie de lui-même.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 91/155
91
2. Augmentation:
X-> Y==> XZ-> YZ ; cette règle signifie que si X
détermine Y.
Les deux ensembles d'attributs peuvent êtreenrichis par un même troisième.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 92/155
92
Une règle d'inférence moins triviale est la
transitivité.3. transitivité:
X->Y et Y->Z ==> X->Z
Exemple:
NV->TYPE et TYPE ->PUISSANCE
ON déduit: NV => PUISSANCE

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 93/155
93
3.Graphe des dépendances fonctionnelles
Soit un ensemble F de dépendancesfonctionnelles élémentaires. Dans le où tous lesattributs gauches sont uniques, il est possible devisualiser cet ensemble de DF par un grapheappelé graphe des dépendances fonctionnelles.A titre d'exemple, considérons l'ensemble dedépendance fonctionnelles entre les attributs de
la relation VOITURE:

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 94/155
94
F= {NV->TYPE; TYPE ->MARQUE; TYPE->
PUISSANCE ;NV >CQULEUR). Le graphe associé est représenté :

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 95/155
95
4. Notion de clé et trois premières formes
normales 4.1. clé de relation
La notion de clé de relation est un concept
essentiel du modèle relationtionnel. Bien que lanotion intuitive de clé soit bien connue, il estpossible d'en donner une définition plus formelleà partir de celle, de dépendance fonctionnelle.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 96/155
96
Notion 5 : Clé de relation (Relation Key)
1)Sous-ensemble X des attributs d'unerelation(A1,A2 ..... An) 1) X->AI,A2, .... An
2) Il n'existe pas de sous-ensemble YCX tel queY ->AI, A2 .. An

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 97/155
97
4.2. Définition des trois premières formes normales
Les trois premières formes normales ont pourobjectif de permettre la Décomposition derelations sans perdre d'informations, à partir dela notion de dépendance fonctionnelle.
L'objectif de cette décomposition est d'aboutir àun Schéma conceptuel qui ne représente pas de
redondances.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 98/155
98
Notion 6: Première Forme Normale (First
Normal Form) une relation est en premièreforme normale si tout attribut contient unevaleur atomique.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 99/155
99
Cette forme normale est justifiée par lasimplicité et l'esthétique. Elle consistesimplement à éviter les domaines composésde plusieurs valeurs.
La deuxième forme normale permet d'assurerl'élimination de certaines redondances engarantissant qu'aucun attribut n'est déterminé
seulement par une partie de la clé.
Exercice d’application:

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 100/155
Soit la relation: Personne( idpersonne ,Identité,Adresse,Voitures) Qui renseigne sur les voitures appartenant à une
personne.
Nb:Voitures est un champ contenant les matricules des différents véhicules appartenant à une personne.
Cette relation , Est – elle en première forme normale?
100

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 101/155
101
Notion 7: Deuxième forme normale (Secondnormal form)
1.une relation R est en deuxième forme
normale si et seulement si : 1 .Elle est enpremière forme;
2. Tout attribut n'appartenant pas à une clé nedépend pas que d'une partie de cette clé.
Exercice d’application:

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 102/155
Exercice d application:
soit la relation
OPERATION(N ° Compte*,CodeOpe*,DateOpe* ,Nom,Prenom,LibelOpe,
Somme)
on note que :
- Nom et Prénom dépendent fonctionnellement de N°Compte
-Libellé d'opération dépend fonctionnellement de Code opération
Est – elle en deuxième forme normale?
102

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 103/155
103
Notion 8 : troisième forme normale
Une relation est en troisième forme normaleSSI :
1.Elle est en deuxième forme normale.
2.Elle ne permet pas une dépendancefonctionnelle transitive
Exercice d’application

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 104/155
pp
soit la relationADHERENT(CodeAdh,NomAdh,AdressAdh,TypAdh,Cotis Adh)
On impose que la cotisation de l'adhérent dépendfonctionnellement du type de l'adhérent.
Est – elle en : troisième forme normale?
104
O C CO

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 105/155
105
Considérons la relation FRUITS (TYPE, PAYS,REGION) dont la clé est le couple <TYPE, PAYS>,avec les dépendances fonctionnelles supposées:
REGION->PAYS
(TYPE, PA YS)->REGION
4.3. Forme normale de BOYCE-CODD

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 106/155
106
Cette relation est bien en troisième formenormale car aucun attribut non clé ne dépendd'une partie de la clé ou d'un attribut non clé.
Cependant, l'extension de cette relationprésente de nombreuses redondances.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 107/155
107
FRUITS TYPE PAYS Régions
Oranges
Pommes
Poires
Cerises
Raisin
Maroc
Maroc
Maroc
Maroc
France
Saisse
Saisse
Saisse
Saisse
Boujeaulais

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 108/155
108
Extension et DF de la relation FRUITS
Afin d'éliminer ces types de redondances.BOYCE et CODD ont introduit la forme normale
qui porte leur nom(en abrégé BNCF).

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 109/155
109
Notion 9 : Forme normale de Boyce Codd(Boyce Codd Form) une relation est en BNCFsi et seulement si les seules dépendancesFonctionnelles élémentaires sont celles danslesquelles une clé détermine un attribut.
*Type (type, Région)
*Région (Région, pays)
Etude de cas:

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 110/155
Etude de cas: Le schéma de relation Prime donne la liste des primes attribuées
au personnel technique en fonction des machines sur
lesquelles il travaille.PRIME(idMachine, atelier, idTechnicien, montantPrime,
nomTechnicien)
Supposons les dépendances fonctionnelles suivants:
- idMachine → atelier
- idTechnicien → nomTechnicien
- (idMachine, idTechnicien) → montantPrime
1) Proposer un identifiant pour ce schéma de relation.
2) En quelle forme normale se trouve ce schéma de relation?Pourquoi?
3) Normaliser ce schéma de relation jusqu’à la forme de Boyce
Codd.
110
4 4 Dépendances multivaluées et quatrième forme

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 111/155
111
4.4. Dépendances multivaluées et quatrième forme
normale a .Dépendances multivaluées:
La notion de dépendance fonctionnelle nous aconduit à décomposer les relations en troisièmeforme normale et en forme normale de Boyce-
Codd.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 112/155
112
Ceci est insuffisant pour éliminer lesredondances et les anomalies de mise à jour.
Considérons par exemple la relation:PARTICIPANT (NP, COURS, SPORTS) Où NPest le numéro du participant , COURS: les courssuivis et SPORTS: les sports pratiqués.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 113/155
113
PARTICIPANT NP COURS SPORT
100
100
200200
200
Base de données
Base de données
Base de donnéesBase de données
mathématiques
Tennis
Football
VéloVélo
Vélo
Relation en troisième forme normale avec redondance

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 114/155
114
Il apparaît clairement des redondances dans cette
relation, et cependant, du fait de l'absence dedépendances fonctionnelles, elle est jusque-là nondécomposable.
L'exemple précédent montre l'insuffisance de lanotion de dépendance fonctionnelle qui ne permetpas de saisir l'indépendance qui existe entre desattributs tel que COURS suivi et SPORT pratiqué.
Pour cela, on généralise la notion de DF enintroduisant celle de dépendance multivaluées (DM).

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 115/155
115
Notion 10: Dépendance multivaluée (Multivalueddependency)
Soit R (A1A2 .... An) un schéma de relation et X et Y
des) sous-ensembles de A1.A2……..An.
On dit que X->-> y (X multi détermine Y, ou il y a unedépendance multivaluée de Y sur X) si, étantdonnées des valeurs de X il Y a un ensemble de
valeurs de Y associées et cet ensemble estindépendant des autres attributs .

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 116/155
116
Exemple:
Soit la relation : VOL (NV,AVION,PILOTE) où NV est un numéro
de vol. On suppose disposer d'un ensembled'avions et d'un ensemble de pilotes. Tout pilote est
conduit à piloter tout avion sur n'importe quel vol.Ainsi, avion et pilote sont indépendants. D'où lesdeux DM élémentaires:
NV AVION ;NV PILOTE

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 117/155
117
Soit encore la relation:PERSONNE (N °CIN, PRENOM ENFANT,
N°VEHICULE)
II est clair que l'on a les DM élémentaires:
N°CIN PRENOM ENFANT; N°CIN N° VEHICULE.
b) Q t iè F N l

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 118/155
118
b) Quatrième Forme Normale
La quatrième forme normale est unegénéralisation de la forme normale de BoyceCodd afin de décomposer les relations ayantdes DM élémentaires.
Notion 11: Quatrième forme normale (Forthnormal form) une relation est en quatrièmeforme normale si et seulement si les seules
dépendances multivaluées élémentaires sontcelles dans lesquelles une clé détermine unattribut.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 119/155
119
A titre d'exemple, la relation PARTICIPANT (NP, COURS, SPORT) n'est pas en quatrième
forme normale: la clé est l'ensemble desattributs et il existe des DM élémentaires:
NP COURS
NP SPORT
entre des attributs participants à la clé.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 120/155
120
Il a été montré que toute relation a unedécomposition (pas forcément unique) enquatrième forme normale qui est sans perte. Par
exemple la relation PARTICIPANT peut-êtredécomposée en deux relations (NP, COURS) et(NP,SPORT) qui sont bien en quatrième formenormale.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 121/155
121
Chapitre 5 : L'agèbrerelationnelle

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 122/155
122
L'algèbre relationnelle se Compose d'un ensemble
d'opérateurs opérant sur des relations et produisantde nouvelles relations.
Il est donc possible de construire de nouvellesinformations à partir des relations de départ et d'une
composition séquentielle d'opérateurs.
De nombreux opérateurs relationnels ont étéproposés, on peut cependant présenter ici les plus
courants. On peut classifier les opérateursrelationnels en trois catégories:
l é t i ff t ti

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 123/155
123
les opérateurs unaires : affectation,sélection et projection
les opérateurs binaires travaillant sur desrelations de même schéma: union,intersection, différence
les opérateurs binaires travaillant sur desrelations de schémas différents: jointure,
produit cartésien, thêta-jointure, division .
1 Opérateurs unaires :

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 124/155
124
1. Opérateurs unaires :
affectation: R(AI, ... , An) = expression desélection
l'affectation permet de sauvegarder le résultatd'une expression de recherche, ou bien derenommer une relation et ses attributs.
- sélection: SELECTION condition deséIection (R)

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 125/155
125
séIection (R)
la sélection prend en entrée une relation Rdéfinie sur un schéma SR et produit en sortieune nouvelle relation de même schéma SRayant comme nuplets ceux de R satisfaisant
à l'expression de sélection. Une expression de sélection est une
condition booléenne construite à partir des
connecteurs logiques et, ou, non et deconditions simples
- projection: PROJECTION Al, .... An (R)

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 126/155
126
p j , ( ) la projection prend en entrée une relation R définie
sur un schéma SR et produit en sortie une nouvellerelation de schéma Al, ... , An (schéma inclus dansSR) ayant comme nuplets ceux de R restreints ausous-schéma Al, .... An. Il faut noter que lacardinalité de la nouvelle relation est inférieure ouégale à celle de R, puisque des doublons ont puêtre produits par la projection et sont doncsupprimés (une relation est toujours un ensemble).
b) Opérateurs binaires de même schéma:

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 127/155
127
) p
Les trois opérateurs ensemblistes opèrent sur desrelations R et S de même schéma SRS.
- union: R UNION S
produit une nouvelle relation de schéma SRS ayantles nuplets de R et ceux de S (les doublons sontsupprimés).
- intersection: R INTERSECTION S
produit une nouvelle relation de schéma SRS ayantles nuplets présents dans R et dans S.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 128/155
128
- différence: R - S produit une nouvelle relation de schéma SRS ayant
les nuplets de R qui ne sont pas dans S. Attention, ladifférence n'est pas commutative.
c) Opérateurs binaires de schémas différents:

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 129/155
129
Soient R et S deux relations définies sur lesschémas SR et SS.
- jointure: R * S
II faut que les schémas SR et SS aient uneintersection SRS non vide. La relation produite a unschéma qui est l'union des schémas SR et SS etdont les nuplets sont la concaténation des nuplets
de R avec ceux de S s'ils ont même valeur pourtous les attributs communs (c'est à dire ceux deSRS).

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 130/155
130
-produit cartésien:RX S
II faut que les deux schémas SR et SS soient
disjoints. La relation produite a un schéma quiest l'union des schémas SR et SS et dont lesnuplets sont la concaténation des nuplets de Ravec ceux de S. Attention le nombre d'élémentsdu produit cartésien est le produit descardinalités des relations R et S

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 131/155
131
R est définie sur un schéma SR composé desensembles d'attributs X, Y (SR = X UNION Y) etS est définie sur un schéma SS composé del'ensemble d'attributs Y (SS = Y). La relation
produite de RIS comprend tous les nuplets dontla concaténation avec tous les nuplets de Sappartient à R.
Etude de Cas :
Une maîtresse de maison s’est constituée une base de

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 132/155
132
données sur les personnes qu’elle invite et les plats qu’elle leur
sert. Cette base de données est composée des trois relations :
Repas(date,invité):donne la liste des invités qui ont étéreçus et à quelle date;
Menu(date,plat): donne le menu servi à chaque date;
Préférence(personne,plat):donne pour chaque personne
ses plats préfères . A l’aide de l’algèbre relationnelle ,répondre aux requêtes
suivantes:
Q1:Quels sont les invités du repas du 01/04/2010 ?
Q2:Quels sont les repas qui ont été servi à Hassan ?
Q3:Quel est le produit cartésien entre repas et Préférences ?
Q4:Quels sont les personnes qui n’ont jamais été invité ?
Q5:Quels sont les invités qui sont venus à tous les repas ?

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 133/155
133
Chapitre 6 : Le langage SQL
1. Définition:

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 134/155
134
SQL = Structured Query Language, issu deSEQUEL (Structured English as a Query Language) .
SQL permet la définition, la manipulation et lecontrôle d'une base de données relationnelle. Ilse base sur l'algèbre relationnelle.
2.Définition des données

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 135/155
135
a) définitions des tables(relations):
CREATE TABLE (Attribut1 TYPE, Attribut2TYPE, .... contrainte _ intégrité l,
contrainte _integrité2, ... );
Type des données: NUMBER (n) : Entier à n chiffres
NUMBER (n, m) : Réel à n chiffres au total(virgule comprise), m après la virgule
CHAR(n) : Chaîne de n caractères
DATE: Date au format 'JJ-MM-AAAA.'
b)définition des contraintes d'intégrité :

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 136/155
136
Cléprimaire: CONSTRAINT nom contrainte PRIMARY KEY
(attribut_clé [, attribut_c1é2, ... ])
Clé étrangère: CONSTRAINT non1 contrainte FOREIGN KEY
(attribut_c1é_ét) REFERENCES table(attribut)
Contrainte de domaine:
CONSTRAINT non1_contrainte CHECK(condition)
Exemple:

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 137/155
137
CREATE TABLE Client (NumCli NUMBER(3),Nom CHAR(30),
DateNaiss DA TE,
Salaire NUMBER(8,2),
NumEmp NUMBER(3),CONSTRAINT cle-pri PRIMARY KEY (NumCIi),
CONSTRAINT cle_etr-FOREIGN KEY (NumEnlp),REFERENCES EMPLOYEUR(NumElnp),
CONSTRAINT date-ok CHECK (DateNaiss <SYSDATE))
c) Création d'index (accélération des accès)

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 138/155
138
c) Création d index (accélération des accès)
CREATE [UNIQUE] INDEX nomJndex ONnomJable (attribut. [ASC/DESC], ... )
.UNIQUE -==> pas de double
ASC/DESC =-=> ordre croissant ou décroissant
ex_CREATE UNIQUE INDEX Icli ON Client (NumCli);
d) Destructions:

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 139/155
139
)
DROP TABLE nomJable;
DROP INDEX nom index;
e)Ajout d'attributs
ALTER TABLE nom Table ADD(attribut TYPE, ... )
ex_ALTER TABLE Client ADD (tel NUMBER(8));

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 140/155
140
g)Modifications d’attributs ALTER TABLE nomTable MODIFY(attribut TYPE, ... );
ex_ALTER TABLE Client MODIFY (tel NUMBER(IO));
f)Suppression de contraintes
ALTER TABLE nomTable
DROP CONSTRAINT nom contrainte;
3. Mise à jour des données.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 141/155
141
3 se à jou des do éesa)Ajout d'un tuple
INSERT INTO nom Table
VALUES (val_tt1, val_att2, ... );
ex. INSERT INTO ProduitVALUES (400, 'Nouveau produit', 78.90);

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 142/155
142
b)Mise à jour d'un attribut
UPDATE nom table SET attribut=valeur
[WHERE condition];ex. UPDATE Client SET Nom='Dudule‘
WHERE NumCli = 3;

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 143/155
143
c)Suppression de tuples
DELETE FROM nom_table [WHERE condition];
ex_DELETE FROM Produit;DELETE FROM
WHERE Ville = 'Lyon';
4. Interrogation des données

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 144/155
144
a)sélection
SELECT [ALL/DISTINCT] attribut(s) FROM table(s)[WHERE condition]
[ORDER BY attributs) [ASC/DESC]];.
• Tous les tuples d'une table
ex_SELECT * FROM Client;
• Tri du résultat
ex. Par ordre alphabétique inverse de nom
SELECT * FROM ClientORDER BY Nom DESC;
b) Calculs ex. Calcul de prix TTC

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 145/155
145
SELECT Prix Uni+ Prix Un*0.206 FROM Produit;
c )projection
ex_/Noms et Prénoms des clients, uniquement
SELECT Nom, Prénom FROM Client;
d)Restriction
ex. Clients qui habitent à Lyon
SELECT * FROM ClientWHERE Ville ='Lyon';
Exercice d’application numéro 1 : A l’aide du Langage SQL répondre aux requêtes suivantes:
E 1 C d tité i é l à 3

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 146/155
146
Ex1 : Commandes en quantité au moins égale à 3
Ex2 : Produits dont le prix est compris entre 50 et 100 F
Ex3 :Clients habitant une ville dont le nom se termine par S
Ex4 : prénoms des clients dont le nom est Dupont,Durandou Martin
5. Fonctions d' agrégats

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 147/155
147
5. Fonctions d agrégats
Elles opèrent sur un ensemble de valeurs.
- A VG : moyenne des valeurs
- SUM: somme des valeurs- MIN,MAX: valeur minimum, valeur maximum - ---- COUNT :nombre de valeurs
Exercice d’application numéro 2 : La base de donnée commerciale est composée des trois tables

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 148/155
148
La base de donnée commerciale est composée des trois tablessuivantes:
Client(,identcli,adresscli);Commande(numcommand,numcli,date,montant);
Produit(Refprod,designation,prixprod).
A l’aide du langage SQL répondre aux requêtes suivantes:
Req1: Moyenne des prix des produits
Req2: Nombre total de commandes.
Req3:Nombre de clients ayant passé au moins une commande
6. Jointure

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 149/155
149
ex. Liste des commandes avec le nom des clients
SELECT Nom, Date, Quantité
FROM Client, Commande
WHERE Client. NumCli =
Commande.NumCIi;
7. Jointure exprimée avec le prédicat lN.

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 150/155
150
p p
ex. Nom des clients qui ont commandé le23/09/1999
SELECT Nom FROM Client
WHERE NumCli lN ( .
SELECT NumCIi FROM Commande
WHERE Date = '23-09-1999');
NB : Il est possible d'imbriquer des requêtes.
8.Prédicats EXISTS/NOTEXISTS

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 151/155
151
ex : Clients qui ont passé au moins une
commande [n'ont passé aucune commande]
SELECT * FROM Client WHERE Numcli [NOT]
EXISTS(SELECT * FROM Commande
WHERE CLIENT. NumCli=Commande. NumCIi );
9. Prédicats ALL

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 152/155
152
9. Prédicats ALL
ex : numéros des clients qui ont commandé aumoins un produit en qualité supérieure àchacune des quantités commandées par leclient n° 1
SELECT DISTINCT NumcIi FROM Commande
WHERE Quantité> ALL (
SELECT Quantité FROM Commande
WHERE NumCli=1 );
10.Prédicat SUM

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 153/155
153
ex : Quantité totale commandée par chaque client
SELECT NumCli, SUM (Quantité)
FROM Commande
GROUP BY NumCli;
11.Opérations ensemblistes

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 154/155
154
p
INTERSECT, MINUS, UNION.
ex. Numéro des produits qui soit ont un prix inférieurà 100 F, soit ont été commandés par le client n °2
SELECT NumProd FROM Produit WHERE PrixUni<lOO UNIONSELECT NumProd FROM Commande WHERE NumCLi=2;
Etude de cas:Une institution d’enseignement professionnel offre à ses élèves des stages
pratiques dans certaines disciplines. Un stage est offert à l’intérieur d’une sessionde stage. Le même stage peut être répété à travers plusieurs sessions. Cependant,

5/17/2018 Les bases de Données Relationnelles - slidepdf.com
http://slidepdf.com/reader/full/les-bases-de-donnees-relationnelles 155/155
g g p p p p ,une session de stage ne comporte qu’un seul stage avec une date de début et unedate de fin.
L’élève s’inscrit donc à une session à titre de stagiaire. Une session secompose d’un ensemble de modules. Chaque module est encadré par un ou desprofesseurs. La prestation du professeur comporte une date de début, une date defin et un nombre d’heures prévues.
Un professeur peut intervenir dans plusieurs modules du même stage. Leprofesseur peut par ailleurs intervenir plusieurs fois dans le même module au cours
d’une session de stage. Enfin le nombre de modules varie d’un stage à l’autre selonsa nature; il n’est as limité à deux.
1) Déterminer le modèle de classes correspondant;2) Le traduire en modèle relationnel;3) A l’aide du langage SQL, créer toutes les tables du modèle relationnel et les contraintes
d’intégrités;
4) A l’aide du langage SQL, Répondre aux requêtes suivantes :- Les professeurs qui n’ont jamais donné de prestations;
Et pour chaque élève ses différentes sessions de stages;