You are on page 1of 38

LesSystmesdeGestionde

BasesdeDonnes(SGBD)

Algbrerelationnelle
20062007
Bibliographie
S.Abiteboul,R.Hull,V.Vianu,FoundationsofDatabases,AddisonWesley
J.C.Date,AGuidetotheSQLStandard,AddisonWesley

J.C.Date,AGuidetoDB2,AddisonWesley
R.Elmasri,S.Navathe,Conceptionetarchitecturedesbasesdedonnes,4me
ed.,publiparPearsonEducation.
H.GarciaMolina,J.UllmanandJ.Widom,ImplementationofDatabase
Systems,PrenticeHall,1999.
G.GARDARIN,BasesdeDonnes,Eyrolles,6metirage,2005.
R.RamakrishnanetJ.GehrkeDATABASEMANAGEMENTSYSTEMS,
MacGrawHill
M.SCHOLL,B.AMANN,P.RIGAUX,V.CHRISTOPHIDES,D.
VODISLAV,PolycopideBasesdeDonnes,librairiedesArtsetMtiers.
UllmanJ.D.andWidomJ.AFirstCourseinDatabaseSystems,PrenticeHall,
1997
UllmanJ.D.PrinciplesofDatabaseandKnowledgeBaseSystems,2volumes,
ComputerSciencePress

B.SadegLeHavre
20062007

Rappels

B.SadegLeHavre
20062007

NiveauxdereprsentationduneBD
(rapportdelANSI/SPARC75)
Grouped'utilisateurs1groupedutilisateurs2 Groupedutilisateursn

Schmaexterne1 schmaexternen
schmaexterne2

modlisation
Schmaconceptuel Monderel

Schma
physique

Supportsphysiques
Fichiers

B.SadegLeHavre
20062007

Danslapratique,4niveaux:

niveauexterne(sousschmaconceptuels)

niveauconceptuel(engnral,lemodleentit/association)

niveaulogique(modlehirarchique,rseau,relationnel,objet)

niveauphysique(fichiers,index,)

B.SadegLeHavre
20062007
Niveauinterne:commentsontstockeslesdonnessurlessupportsphysiques
>grparleSGBD

Niveauconceptuel:passagedumonderelaumondeconceptuelviaunmodle
(exemple:lemodleentit/association).Doittreindpendantdetouteimplantation(de
toutemachine)
>grparleconcepteurdelaBD

Niveaulogique:passagedumodleconceptuelunmodledebasesdedonnes
(relationnel,objet,),envuedelimplantationsurmachine
>grparleconcepteurdelaBD

Niveauexterne:crationdevues(partiesdelabasededonnes)surlesquellesdes
groupesdutilisateursontledroitdetravailler(interroger,insrer,modifieret/ou
supprimer>selonlesautorisations)
>grparleconcepteurdelaBD
>letravailsurlesvuesesteffectuparlesutilisateurs.

B.SadegLeHavre
20062007
Cycledeviedunebasededonnes
Monderel

Concevoir(analyse=>modle(E/Aparexemple):concepteur

Crerlastructure(modlelogique(ex.relationnel)>SGBD
particulier):idem

Implanterlabasededonnes(LDD+insertionsinitiales):
administrateur

Optimiserlabasededonnes(indexation,):administrateur

Manipuler(LMD:insrer,mj,supprimer):utilisateur

Maintenir(requtesspcifiques):administrateur
B.SadegLeHavre
20062007

Modlerelationnel

Di;i=1,2..ndesensembles,ditsdomaines

UnerelationRestunsousensembleduproduit
cartsien:
RdansD
i,1xDi,2...x...Di,k k n

DansuneBDrelationnelle,onnaquedes
relationsfinies
LesD sontlesattributsdeR;(Codd)
i,j

B.SadegLeHavre
20062007

Schmad'unerelation
LesnomsRetDi,jconstituentleschmadela
relation

Ceschmaetl'ensembledeslmentspossiblesde
RconstituentuneintentiondeR.

LeslmentsdeRprsentsunmomentdonn
constituentuneextensiondeR.
UnemisejourdeRmodifieuneextension
etchangel'tatdelabase

B.SadegLeHavre
20062007

Langagesrelationnels

Lalgbrerelationnelle

B.SadegLeHavre
20062007

Leslangagesrelationnels:
sontutilisspoureffectuerdesrequtessurune
BDrelationnelle
utilisent2approchesquiexprimentlesmmes
oprations:
algbrerelationnelle
calculrelationnel

B.SadegLeHavre
20062007
Algbrerelationnelle

Lesoprateursdelalgbrerelationnellesontdesoprateurs
ensemblistes.
Unoprateurprendenentreuneoudeuxrelations(ensembles
detuplesdelabase)etretourneunrsultatquiest
galementunerelation.

Ilexiste5oprateursdebase:
lesoprateursunaires:selectionetprojection
lesoprateursbinaires:union,diffrenceetproduitcartsien

Dautresoprateursexistentquipeuventsexprimerlaide
desoprateursdebase:lajointure,ladivisionet
lintersection
B.SadegLeHavre
20062007

Projection

ProjectiondesattributsdunerelationRsurunsous
ensembledesattributsdeR:

A1,A2,,Ak (R)=R(A1,A2,,Ak)
oA1,A2,,Aksontunsous
ensembleduschmadelarelationR.

LaprojectionsurA1,A2,,Akliminetousles
autresattributsdelarelationetsupprimeles
tuplesdupliqus.

B.SadegLeHavre
20062007

Exempledeprojection
R

ABC AB
abc ab
dab => (R)=
A,B
da
cbd cb
abe ee
eea

B.SadegLeHavre
20062007

Exemple2deprojection
Requtetype:
Quelssontlesvillesdersidencedes
personnesdanslatableP1

P2=ville(P1)

P1 P2
ID NOM VILLE
2140 Dupond Paris VILLE
3425 Durand Paris VILLE Paris
3457 Dupont Lyon Lyon

B.SadegLeHavre
20062007

Selection

SelectionenfonctionduneconditionCportantsur
desattributsdeR.Lersultatestunerelation
dontlesattributssatisfontlacondition.

Onnote: (R)
C

B.SadegLeHavre
20062007

Exempledeselection
R

ABC ABC
ab1 ab1
da2 => B=b (R)= cb3
cb3 ab4
ab4
ee5

R ABC
ABC ab1
ab1 da2
da2 => C (R)=
cb3
oC:(A=aOUB=a)ETC 3
ab4
ee5
B.SadegLeHavre
20062007

Exemple2deslection

Requtetype:
SlectionnertouslesindividushabitantParis.
P2= VILLE=PARIS (P1) ID
P2
NOM VILLE
2140 DUPONT PARIS
3425 DURAND PARIS

VILLE=PARIS

P1
ID NOM VILLE
2140 DUPONT PARIS
3425 DURAND PARIS
3457 PIERRE ORLY
B.SadegLeHavre
20062007

Lesconditionsdeslection

Ilsagitduneformulelogiquequireliepardesconnecteurs
logiques(AND,OR,NOT)desexpressionsdelaforme:
AiopAj
ouAiopa
ouAi
oAi,AjsontdesattributsdelarelationR
aestunlement(unevaleur)dudomainedeAi
opestunoprateurdecomparaison:=,<,>,<=,>=,<>

B.SadegLeHavre
20062007

Expressionsdelalgbrerelationnelle

Lalgbrerelationnelleestfermeparrapportauxoprationde
lA.R.:lersultatduneoprationrelationnelleestaussiune
relation.

Lesoprationsrelationnellespeuventtrecombinesetformer
desexpressionspluscomplexes.
Ex:RelationR=Commande(nom,prenom,nomc,qte)

R= pnom( nom (paul(commande))


R= nom (paul(commande)):
contientlescommandesdepaul

B.SadegLeHavre
20062007

Produitcartsien

ProduitcartsiendelarelationRparlarelationS:RxS
Argument:2relationsquelconques
R(A1,A2,,An)etS(B1,B2,,Bk)
SchmadelarelationrsultatT:RxS:(A1,,An,B1,,Bk)
LesoccurrencesdeT:ensembledestuplesayantn+kattributs:
dontlesnvaleursdespremiersattributssontlestuplesdeR
etleskdernieressontlestuplesdeS

B.SadegLeHavre
20062007

Exemple
RxS
R S
ABCDE
AB CDE

11 aba
11aba
12 abc
12aba
34 baa
34aba
11abc
12abc
34abc
11baa
12baa
34baa

B.SadegLeHavre
20062007

Jointurenaturelle:onutiliseralesymble
Soient2relationsRetSayantdesattributsencommun
R(A1,,Am,X1,,XK)

S(B1,,Bn,X1,,Xk)

SchmadelarelationRS,jointurenaturelledeRetS:
T(A1,,Am,B1,,Bn,X1,,XK)

UntupledeRScomportedonc(m+n+k)attributs.
S ABCD
R
BCD abcd
ABC RS
bcd abce
abc
bce dbcd
dbc
adb dbce
bbf
cadb
cad


Enprincipe:symble
B.SadegLeHavre
20062007

Jointurenaturelle(suite)

Lajointurenaturellecorrespondunproduitcartsien,suivi
duneslection.
Soient2relationsRetSayantdesattributsencommun
R(A1,,Am,X1,,XK)
S(B1,,Bn,X1,,Xk).SoitV={X1,,Xk}
RS= U( AV:R.A=S.A(RxS))

oU=lensembledesattributsdeRetSet
R.AestlattributAdeR

B.SadegLeHavre
20062007
Jointurenaturellealgorithme

Dbut

PourtouttupleadeRettouttuplebdeS:

1.Concatneraetb.Onobtientuntupleaveccommeattributsa|b,cd:
A1,,Am,X1,,Xk,B1,,Bn,X1,,Xk

2.NegardercetuplequesichaqueattributXideaestgallattributXide
b:i=1::..ka.Xi=b.Xi

3.Eliminerlesvaleurs(colonnes)dupliques.Onobtientpourlajointure
naturelleuntupleaveccommeattributs:

A1,,Am,B1,,Bm,X1,,Xk

aba+b

B.SadegLeHavre
20062007

jointure

Note:.
RAi BjS,o {=,,<>, , , }

Cestunejointureentre2relationsRetSavec:
R=(A1,,Am),S=(B1,,Bn)
SchmadeT=RAi Bj
S=(A1,,Am,B1,,Bn)

LavaleurdeTest: Ai Bj (RxS):slectiondestuplesdeRxStels
queAi Bj

Equijointure:onparledequijointurequandloprateur est
lgalit.

B.SadegLeHavre
20062007
Exemplede RA CS
R
jointure RxS
S
ABCDE ABCDE
AB CDE
1a 1ba
1a1ba 1a1ba
1b 2bc
1a2bc 1a2bc
3a 4aa
1a4aa 1a4aa

1b1ba 1b1ba

1b2bc 1b2bc

1b4aa 1b4aa

3a1ba 3a4aa
A>C
A>C 3a2bc
3a4aa

B.SadegLeHavre
20062007
Exempledquijointure RB=DS
R S RxS

ABCDE ABCDE
AB CDE
1a 1ba
1a1ba 1a4aa
1b 2bc
1a2bc 1b1ba
3a 4aa
1a4aa 1b2bc

1b1ba 3a4aa

1b2bc

B D 1b4aa = B=D (RxS)


3a1ba
3a2bc
3a4aa

B.SadegLeHavre
20062007

Exercices:Equijinture,jointurenaturelle

Soientlesrelations:
Immeuble(AdrImm,NBetages,DateConst,Proprio)
AppImm(AdrImm,NumApp,Etage)

1.Nomdupropritairedelimmeubleoestsitulappartementoccuppar
Dupond:jointurenaturelle
Proprio(Immeuble Occup=Dupond (AppImm))

Jointurenaturelle

2.Appartementsoccupspardespropritairesdimmeubles:

AdrImm,NumApp,Etage(AppImmOccup=ProprioImmeuble))
quijointure B.SadegLeHavre
20062007
Autreexemplederequte
Soitleschma:
Commandes(pnom,cnom,numcmde,qte)
Clients(cnom,cadr,balance)

Nometadressedesclientsquiontcommanddesbriques:
cnom,cadr(Clients pnom=briques (Commandes))

Jointurenaturelle

B.SadegLeHavre
20062007

UNION

Soient2relationsR(A1,,Am)etS(A1,,Am)
LeschmadeT=RSest:T(A1,,Am)
LestuplesdeT:unionensemblistesurD1xxDmavec
DidomainedeAi

Lesdoublonssontlimins.
T=RS={t/tRtS}
AB
R S RS
AB ab
AB
ab ac
ab
ae ae
ac
de fg
de
fg

B.SadegLeHavre
20062007

UNION

Soient2relationsR(A1,,Am)etS(A1,,Am)
LeschmadeT=RSest:T(A1,,Am)
LestuplesdeT:diffrenceensemblistesurD1xxDmavec
DidomainedeAi


T=RS={t/tRtS}
AB
SR
R S ac
AB AB
AB fg
ab RS
ab ac
ae
ac
de
de
fg

B.SadegLeHavre
20062007

INTERSECTION
Soient2relationsR(A1,,Am)etS(A1,,Am)
LeschmadeT=RSest:T(A1,,Am)
LestuplesdeT:intersectionensemblistesurD1xxDmavec
DidomainedeAi


T=RS={t/tRETtS}
RS
AB
RS =R(RS)
R S ab
AB (diffrence) (intersection)
AB AB de
ab ac
ab
ae
ac
de
de
fg

B.SadegLeHavre
20062007

Semijointure:onutiliselesymble:

LasemijointureRScorresponduneprojectionsurles
attributsdeRdelajointurenaturelleentreRetS: U(RS)
SiR=(A1,,Am,X1,,Xk)etS=(B1,,Bn,X1,,Xk)alorsle
schmadeT:RS=(A1,,Am,X1,,Xk)
=>RS
Exemple: =>R S
ABCD
R S
abcd ABC
BCD abce abc
ABC
bcd dbcd dbc
abc
bce dbce cad
dbc
adb cadb
bbf
semijointure

cad
jointurenaturelle

B.SadegLeHavre
20062007

R Division

ABCD S
R S

abxm CD
AB
xm
abyn ab
yn
ce
abzo zo

bcxo

bdxm

cexm

ceyn

cezo
dazp
daym

B.SadegLeHavre
20062007

COMM Division:exemple
PROD Client(s)quiont
commandtousles
produits
Numnompnomqte Pnom

1Jeanbriques100 briques
COMM PROD
2Jeanciment10 ciment
nom
3Jeanpltre5 pltre

4Paulbriques300 Jean

5Paulplatre8

5Vincentplatre15

B.SadegLeHavre
20062007

Division:formellement
SoientR1(A1,,Am,X1,,Xk)etS(X1,,Xk)cdles
attributsdeSsontinclusdansR.
T=Rapourschma:T(A1,,Am)
TuplesdeT=R S
={(a1,,am)/(x1,,xk)S:(a1,,am,x1,,xk)R

Ladivisionpeutsexprimerenutilisantlesoprateursproduit
cartsien,projectionetdiffrence:R S=R1R2o:

R1= A1,,Am(R)etR2= A1,,Am((R1xS)R)

B.SadegLeHavre
20062007
Oprationderenommage

Note: ,cestuneoprationunaire.
Consisteremplacerlenomdunattributparunautre.
SoitR(A1,,Am),ona:
R:T(A1,,Ai1,Bi,Ai+1,...,Am)
Ai Bi

B.SadegLeHavre

You might also like