Vous êtes sur la page 1sur 31

Bases de donnes relationnelles

I.
II.
III.
IV.
V.
VI.
VII.

Introduction,
Architecture logique dun SGBD,
Modle relationnel,
Algbre relationnelle,
Modle entit-association,
Passage du modle E-A au modle relationnel,
Langage SQL,

Introduction

Donne: est lenregistrement dans un code bien dtermin dune


observation, dun objet, dun phnomne, dune image, dun son, dun
texte..
Information: tout ce quon peut dduire partir d'une donne ou un
ensemble de donnes.

Introduction
Base de donne: Au sens large, collection de donnes, au sens plus
strict, ensemble de donnes fortement structures, fiables, cohrentes
partages par plusieurs utilisateurs ayant des vues diffrentes sur ces
donnes
Cet ensemble est sufsamment organis pour que ces donnes puissent
tre facilement :
retrouves,
interroges,
enrichies,
mises jour,
supprimes,
compares.

Introduction
Systme de gestion de bases de donnes: Logiciel qui permet de grer
une base de donnes:
Cration et exploitation de la Bases de Donnes.
Contrle et scurit des bases de donnes.
Optimisation des acces aux bases de donnes.

Architecture logique dun SGBD


On peut dcrire l'architecture logique d'un SGBD de la manire suivante :
Schma Externe

Architecture apparue
aux annes 60 par le groupe
ANSI/SPARC

Schma Externe

Schma Conceptuel
logique

Schma Interne
(physique)

Schma Externe

Architecture logique dun SGBD


Niveau interne/physique: concerne la faon de stockage des donnes
physiquement(diffrents disques utiliss ,type daccs aux fichiers).
Niveau logique: dcrit la structure de la base de donnes vis vis des
utilisateurs, ce niveau reprsente limage fidle du systme rel.
Niveau externe: reprsente plusieurs vues spcifiques pour la
manipulation des donnes.
Cet architecture a permis une indpendance logique et physique entre
les niveaux.

Fonctionnalits dun SGBD

Contrle de la redondance,
Partage des donnes,
Contrle de concurrence,
Protection des donnes ,
Contraintes dintgrits,
Donnes distribues.

Modle relationnel
Modle relationnel:
Le modle relationnel a t dfini en 1970 par E.F.Codd
au laboratoire IBM, les premiers systmes commerciaux ont
apparu dans les annes 80.
Le modle le plus utilis.
Il sagit dune description simple des donnes sous forme
tabulaire, fonde sur la thorie mathmatique des relations.
Modle caractris par sa simplicit et sa puissance au
niveau des oprations de manipulation des donnes.

Modle relationnel

Dfinition:
Une relation 'r' est un sous ensemble du produit cartsien
de n ensembles appels Domaines.
Domaine est un ensemble de valeurs atomique, soit fini, soit
infini.
Une relation dcrit un fait dans le monde rel.

Modle relationnel

Attribut : colonne d'une relation caractrise par un nom.


(signification smantique d'une colonne).
Tuple : ligne d'une relation correspondant un
enregistrement (appel aussi n-uplet)
Un schma de relation : not R(A1,A2,,An) est un
ensemble dattributs A1,A2,,An ; chaque attribut Ai est
associ un domaine Di.
r une relation: sur le schma de relation R est un ensemble
de n-uplets r = {t1, t2,..,tn}

Modle relationnel
Caractristiques des relations:
Le nom dattribut est unique.
Le nom dune relation R est unique dans l'ensemble des
relations de la base.
n-uplet est une squence ordonne de valeurs dattributs.
Une valeur dattribut peut tre nulle.
Nombre de lignes dune relation est appel cardinalit
dune relation.
Nombre de colonnes est appel degr.
R est caractrise par un nombre fixe de colonnes.
r est caractrise par un nombre variable de lignes.

Modle relationnel

Dfinition:
Une BD relationnelle est un ensemble de relations :
- Relations de l'utilisateur (relations de tables)
- Relations de catalogues (relations systmes)

Modle relationnel

Le SGBD relationnel possde des langages pour la formulation des


requtes dans une base de donnes.
Deux types de langages:
SQL: Lutilisateur dfinie linformation dsire, et le SGBD se
charge dextraire les donnes.
PL/SQL: permet dcrire des procdures et des fonctions stockes.

Algbre relationnelle

L'algbre relationnelle dfinit 6 oprations de base pour la


manipulation des relations:
Union
Diffrence
Projection
Produit cartsien
Selection
Intersection

Algbre relationnelle

Union:(Binaire)

Rel1 Rel2

Rel3

r3 : runit dans une mme relation les tuples


de r1 et ceux de r2

Algbre relationnelle

Diffrence:(Binaire)

Rel1 - Rel2 Rel3


r3 : slectionne les tuples de r1 qui ne sont
pas dans r2

Algbre relationnelle

Projection:(Unaire)
Rel1(a1,a2,..,an)

a1,a2,....,ai

(Rel1) Rel2(a1,a2,..,ai)

Algbre relationnelle

Produit cartsien:(binaire)
Rel1(a1,a2,..,an)
Rel2(b1,b2,...,bm)

Rel1xRel2 Rel3(a1,a2,..,an,b ,b ,..,bm)


1

R3: chaque tuple de r1 est combin avec


chaque tuple de r2.

Algbre relationnelle

Selection:(unaire)
Rel1(a1,a2,..,an)

condition

(Rel1) Rel1

Rsultat: relation compose de n-uplets vrifiant une condition

Algbre relationnelle

Intersection:(binaire)

Rel1 Rel2 Rel3


r3 : les tuples qui sont la fois dans r1 et r2

Algbre relationnelle

Jointure:(binaire)

Rel1

Rel

cond

Rel3

r3 : toutes les combinaisons entre tuples de


r1 et r2, portant la mme valeur pour les
attributs de mme domaine

Modle Entit-Association

Entit est un objet:


Considr suffisamment autonome, sans rfrence autre chose
Signal par un nom identifiable
Dot dun ensemble de proprits

Classe dentit:
Ensemble dentits de mme type.

Modle Entit-Association

Association:
Lien associant deux entits ou plusieurs
Exemple: Association ENSEIGNE
Professeur ENSEIGNE Classe
ENSEIGNE

Classe dassociation:
Ensemble dassociations de
mme type

Modle Entit-Association

Diagramme Entit-Association:
Entit1

Entit2
Association

Exemple:
Client
Num client
Nom client
Adresse client

Commande
passe

Num commande
Date commande

Modle Entit-Association

Type dassociation:
Une association peut tre binaire, Ternaire ou n aire
Vhicule

EstPossd

Matricule
Marque
Num Moteur

Personne
Num CIN
Nom
Date_naiss

Autoris

Parking
Num parking
Adr parking

Modle Entit-Association

Type dassociation:
Plusieurs types dassociations associant les mmes types dentits
Personne

Est Proprit

Maison
Numero
Adresse

Num CIN
Nom
Date_naiss
Est Locatai

Modle Entit-Association

Type dassociation:
Un mme type dentit peut participer plusieurs fois un mme type
dassociation
Personne
Nom
Prenom
adresse

Est pere de
Date_nai

Modle Entit-Association

Cardinalits:
Le nombre de fois maximum et le nombre de fois minimum quune mme occurrence
de ce type peut intervenir dans les occurrences de lassociation
0 minimum : si une occurrence dune entit Peut ne pas participer lassociation.
1 minimum : si une occurrence dune entit Participe obligatoirement
lassociation.
1 maximum : si une occurrence dune entit Peut participer au plus une fois
lassociation.
n maximum : si une occurrence dune entit Peut participer plusieurs fois
lassociation.

Modle Entit-Association

Exemple:
Compte

Client
Num CIN
Nom
Date_naiss

Ouvre
1,n

1,1

Un client ouvre obligatoirement un compte


Un client peut ouvrir plusieurs compte
Un compte est ouvert par un et un seul client

Num compte
Solde

Modle Entit-Association

Identificateur /Cl :
Groupe minimum dattributs identifiant une entit unique dans sa classe.

Personne
Num CIN
Nom
Date_naiss

Num CIN reprsente la cl de lentit Personne.

Passage du modle E-A au modle relationnel


Rgle1:
Pour chaque classe d'entit, correspond un schma de relation unique.
Rgle2:
Pour chaque proprit de la classe d'entit, correspond un attribut du schma de
relation.
Rgle3:
L'identifiant de la classe d'entit, devient cl primaire du schma de relation.
Rgle4:
Pour chaque classe d'association, on lui associe un schma de relation unique.
Rgle5: VoirTD
Si c'est possible, optimiser la cl primaire obtenue et viter ventuellement la