Vous êtes sur la page 1sur 23

Introduction aux Bases de Donnes

CHAPITRE 1 : Introduction aux bases de donnes


PLAN :
I-1 Introduction
I-2 Les concepts de B et !"B
I-2-1 #initions
I-2-2 Les di##rents ni$eaux de reprsentation
I-2-% &ise en 'u$re d(une base de donnes
I-% Arc)itecture et ob*ecti#s d(un !"B
I-%-1 Arc)itecture
I-%-2 R+,es
I-- Les .od/,es de donnes
I---1 &od/,e )irarc)i0ue
I---2 &od/,e rseau
I---% &od/,e E1A
I-4-4 Modle relationnel
1
Introduction aux Bases de Donnes
1 INTR23CTI2N
Les entreprises et les organisations connaissent depuis longtemps la place prpondrante de
linformation et de son rle crucial dans lamlioration de leur rentabilit Le traitement
automati!ue de linformation" gr#ce $ linformati!ue a permis de rendre des ser%ices
considrables $ ces entreprises en amliorant leur fonctionnement
&out au dbut de lutilisation de linformati!ue" les mt'odes classi!ues anal(saient les
collections de donnes du monde rel pour en faire des fic'iers )'a!ue application a%ait son
ou ses fic'iers" !ue lon traitait sparment
Rappel : Dfinition dun fichier
*n fic'ier est un ensemble denregistrements de m+me descripteur , un descripteur est une
suite de rubri!ues ou c'amps reprsentant des catgories de %aleurs , un enregistrement est
une succession de %aleurs de ces c'amps
Lamlioration des capacits et tec'ni!ues de stoc-age par des mmoires plus grandes et plus
souples et des tec'ni!ues daccs plus performantes ont fait %olu les exigences des
utilisateurs )eux-ci ne se contentaient plus de lautomatisation dapplications routinires"
mais exigeaient des .
Informations compltes"
Informations co'rentes"
Informations structures"
Informations disponibles rapidement pour plusieurs utilisateurs
&rs %ite les /(stmes de 0estion de 1ic'iers 2/013" ont prou% leurs limites par leur .
Insuffisance dans la gestion des donnes en mmoire secondaire 2donnes
persistantes3"
Incapacit $ restituer rapidement linformation
LA SOLUTION : APPARITION DES CONCEPTS DE ASE DE DONNEES !D"
!#$%&'#$%(" ET DE SON S)STE*E DE +ESTION !S+D"

2 LE! C2NCEPT E BA!E E 2NNEE! ET !4!TE&E E "E!TI2N E B
&,# D-.INITIONS :
Une /a0e de donne0 !D" est une collection de donnes" reprsentations partielles
daspects pertinents de la ralit organisationnelle sur les!uels on sou'aite +tre renseign
)es collections de donnes" aussi co'rentes !ue possibles" sont mmorises sur des
supports accessibles par un ordinateur" a%ec une redondance calcule et structures pour
satisfaire simultanment plu0ieur0 utili0ateur0 de fa4on slecti%e
Le 010t23e de 4e0tion de /a0e0 de donne0 !S+D" est un logiciel !ui interagit a%ec la
BD Il est complmentaire $ un /01 et assure les fonctions sur les!uelles celui-ci est
dfaillant" entre autres des accs sop'isti!us et la pr%ention des conflits aux accs
concurrents
5%ant de crer et de faire fonctionner une base de donnes" un important tra%ail de conception
!ui aboutit au sc'ma de la base doit +tre ralis )e tra%ail obit aux diffrentes tapes
sui%antes
6
Introduction aux Bases de Donnes
&,& LES DI..ERENTS NI5EAU6 DE REPRESENTATION DUNE ASE DE
DONNEES
7ous pou%ons sc'matiser les diffrents ni%eaux de reprsentation dune BD par la figure
sui%ante .
La norme 57/I8/95:) du groupe );D5/<L 21=>?3 a permis de dfinir trois
ni%eaux de reprsentation .@A&@:7@" );7)@9&*@L" I7&@:7@
Le processus de d%eloppement dune base de donnes comprend deux grandes
p'ases .
- *ne p'ase de conception dont le rsultat est le SC7E*A CONCEPTUEL 5u
cours de cette p'ase" la %alidation seffectue $ tra%ers les SC7E*AS
E6TERNES
- *ne p'ase de ralisation dont le rsultat est le SC7E*A INTERNE et la
ASE DE DONNEES
B
SC7E*A
E6TERNE #
SC7E*A
E6TERNE &
SC7E*A
E6TERNE (
Gr
oupe 1
Groupe 2
Gr
oupe 3
SC7E*A
CONCEPTUEL
SC7E*A
INTERNE
Mapping
Mapping
M;7D@
:@@L
Proce00u0 #
Proce00u0 &
Ni8eau
e9terne
Ni8eau conceptuel Ni8eau
interne

D
Introduction aux Bases de Donnes
661 L@ 7IC@5* );7)@9&*@L
Le sc'ma conceptuel est la D c'arpente E dune BD Il dcrit en termes abstraits la ralit
organisationnelle et ses rgles de gestion
Le processus de conception consiste $ traduire les obFets du monde rel en catgories
dobFets sui%ant des *ODELES bien dfinis
Il existe plusieurs t(pes de modles !ue nous pou%ons classer en trois catgories .
Le0 3od2le0 de #
2re
4nration : dcennie %:
GI@:5:)GIH*@
:@/@5*
Le0 3od2le0 de &
i23e
4nration : le0 dcennie0 ;: et <:
@85 . @7&I&@ 85//;)I5&I;7
:@L5&I;77@L
L@/ :@/@5*A /@M57&IH*@/
Le0 3od2le0 de (
i23e
4nration : la dcennie $:
L@ M;D@L@ ;BI@&
666 L@ 7IC@5* @A&@:7@
*n sc'ma externe appel aussi 5UE dans les s(stmes relationnels est une perception
des donnes par un programme dapplication
*ne %ue est un SOUS'SC7E*A dun sc'ma conceptuel
Le sc'ma externe peut contenir des informations complmentaires 2par exemple des
informations de calcul3
Les diffrents sc'mas externes permettent la %alidation du sc'ma conceptuel
Il existe une tec'ni!ue de construction du sc'ma conceptuel $ partir de lintgration de
%ues
66B L@ 7IC@5* I7&@:7@
Le sc'ma interne est constitu de deux sc'mas
L@ SC7E*A LO+I=UE . Il est construit $ partir du sc'ma conceptuel par
transformation 2mapping3 en utilisant des rgles de correspondance gnrales entre
structures conceptuelles et structures de stoc-age et en dfinissant les c'emins
daccs
L@ SC7E*A P7)SI=UE : Il est construit $ partir de la connaissance du /0BD
utilis
&,( *ISE EN >U5RE DUNE ASE DE DONNEES
La mise en Ju%re dune BD ncessite lexcution de plusieurs t#c'es dont les
principales sont la dfinition et la manipulation de la base de donnes
4
Introduction aux Bases de Donnes
TAC7E N?# : DE.INITION DE LA ASE DE DONNEES
La premire t#c'e consiste $ reprsenter le sc'ma conceptuel $ laide dun langage , le
LDD Langage de Dfinition de Donnes
L@ LDD est propre $ c'a!ue /0BD et permet la reprsentation .
Des classes dentits
Des classes dassociations entre les entits
Des contraintes dintgrit
L@ LDD permet aussi la spcifications des sc'mas externes
E6E*PLE #: utilisation de /HL
CREATE TALE 5OL !NU*ERO : INT@ DATE : C7AR!%"@ SIE+E : INT@
5ILLEDEP : C7AR!#:"@ 5ILLEARR : C7AR!#:"" A
CREATE INDE6 .OR 5OL ON NU*ERO
TAC7E N?& : *ANIPULATION DES DONNEES DE LA ASE
*ne fois le sc'ma dfini" il faut interroger" mettre $ Four la BD gr#ce au Langage de
*anipulation de Donnes . L@ L*D
Lutilisateur interroge la BD $ laide dune re!u+te 2!uestion3
Le LMD comporte des instructions de .
:ec'erc'e
Insertion et suppression
Mises $ Four
Le LMD peut +tre autonome ou inclus dans un langage 'te" cest-$-dire utiliser des
langages de programmation traditionnels dans les!uels des ordres dappel de procdures
fournis par le /0BD permettent de raliser des oprations spciales sur les BD
E6E*PLE & : *tilisation de /HL
UPDATE 5OL
SET SIE+E B SIE+E CD
E7ERE NU*ERO B #:&( AND DATE B FAOUT $$
E6E*PLE ( : utilisation dun L57050@ G;&@
K
CALL +ET !"
G
A :B C#
G
CALL STORE !A"
RE*AR=UE : sou%ent un m+me langage assure la dfinition et la manipulation de donnes
2par exemple /HL3
?
Introduction aux Bases de Donnes
% ARCHITECT3RE ET R2LE! (3N !4!TE&E E B
(,# ARC7ITECTURE

1 Le sc'ma conceptuel est traduit en une description interne gr#ce au LDD
6 Le processeur de langage de re!u+tes peut rece%oir des donnes de deux sources .
Dun terminal . 9:;0:5MM@ /HL par exemple
Dun programme dapplication crit en ) par exemple oL figure des ordres
dappel de t(pe )5LL
B Le /0BD anal(se la re!u+te ou le programme dapplication pour en %rifier la
conformit et la co'rence
4 Le /0BD traduit les commandes de la re!u+te ou du programme dapplication en
commandes excutables par le /01 sur la BD
? Le /0BD maintient et accde aux tables des autorisations et des accs concurrents
(,& RHLES DUN S+DR
Les obFectifs dun /0BD sont les sui%ants .
1 Indpendance p'(si!ue
M
ReIuJte
Utili0ateur
Pro4ra33e
dapplication
Sch3a
conceptuel
Proce00eur
du lan4a4e
de reIuJte0
Co3pilateur
LDD
S + D
Sch3a
ph10iIue
S + .
D
Ta/le de0
autori0ation0
Ta/le de0 acc20
concurrent0
& & #
#
D
D
(
K
Introduction aux Bases de Donnes
6 Indpendance logi!ue
B Manipulation des donnes par des non informaticiens
4 @fficacit des accs aux donnes
? 5dministration centralise des donnes
M 7on redondance des donnes
> )o'rence des donnes
N 9artageabilit des donnes
= /curit et confidentialit des donnes
&ous ces obFectifs sont possibles gr#ce .
5u support de 3od2le0 de donne0"
5 la dfinition de lan4a4e0 de reIuJte0"
5 la dfinition du concept de tran0action
B61 ;BI@)&I1 1 . I7D@9@7D57)@ 9G</IH*@
:aliser lindpendance p'(si!ue cest raliser lindpendance entre structure de stoc-age
2ni%eau p'(si!ue3 et structures de donnes" reprsentations abstraites du monde rel 2ni%eau
logi!ue3
- 5u ni%eau logi!ue" les structures de donnes sont dfinies sur la base dentits et
liens entre entits
- 5u ni%eau p'(si!ue" les structures de stoc-age associes sont des enregistrements"
des fic'iers etc *ne entit de ni%eau logi!ue peut +tre implmente par un ou
plusieurs enregistrements du ni%eau p'(si!ue sans !ue le programme dapplication
!ui manipule cette entit connaisse cette correspondance
Lindpendance p'(si!ue permet de c'anger lorganisation p'(si!ue des donnes en mmoire
secondaire sans a%oir $ modifier les programmes dapplications
B66 ;BI@)&I1 6 . I7D@9@7D57)@ L;0IH*@
5ssurer lindpendance logi!ue" cest autoriser plusieurs %isions diffrentes de diffrents
groupes de tra%ail sur la m+me base
)eci est possible gr#ce $ la notion de %ue
La modification dune %ue nimpli!ue pas la modification de la base
B6B ;BI@)&I1 B . M57I9*L5&I;7 D@/ D;77@@/ 95: D@/ 7;7 I71;:M5&I)I@7/
Les non informaticiens manipuleront la BD gr#ce $ des langages non procduraux" cest-$-
dire oL les c'emins daccs ne seront pas prciss )e sont les langages de !uatrime
gnration et sont les LMD des /0BD
B64 ;BI@)&I1 4 . @11I)5)I&@ D@/ 5))@/ 5*A D;77@@/
Les accs aux donnes seront plus efficaces !ue dans les /01 gr#ce notamment .
5u d%eloppement dindex sop'isti!us
5 lexistence de plusieurs c'emins daccs $ une donne
5 lexistence de tec'ni!ues doptimisation de re!u+tes !ui slectionnent le c'emin
optimal $ une donne
>
Introduction aux Bases de Donnes
B6? ;BI@)&I1 ? . 5DMI7I/&:5&I;7 )@7&:5LI/@@ D@/ D;77@@/
5dministrer des donnes consiste $ .
Dfinir des structures de stoc-age"
Dfinir des structures de donnes"
5ssurer le sui%i et le contrle de leur %olution
9our cela un administrateur de la base sera c'arg de ces fonctions
B6M ;BI@)&I1 M . 7;7 :@D;7D57)@ D@/ D;77@@/
La conception intgre de la BD gr#ce $ la notion de sc'ma de donnes 2!ui est une
reprsentation globale des informations $ laide de modles de donnes pour un ensemble
dapplications3 %ite les redondances constates dans les /01
B6> ;BI@)&I1 > . );G@:@7)@ D@/ D;77@@/
Les donnes de la base obissent $ des rgles appeles contrainte0 dint4rit !CI",
*ne )I est une assertion !ue doit %rifier le /0BD $ c'a!ue fois !ue la donne sur la!uelle
elle est dfinie est sollicite 2 dc'argement de lutilisateur lors des opration de cration"
modification" suppression3
Il existe deux t(pes de )I . )I stati!ue et )I d(nami!ue *ne )I stati!ue est dfinie sur les
aspects structurels de donnes" alors !uune )I d(nami!ue est dfinie sur leurs aspects
comportementals
Une D cohrente e0t une D dont le0 CI 0ont touLour0 8rifie0 lor0 dopration0 0ur la
D,
B6N ;BI@)&I1 N . 95:&50@5BILI&@ D@/ D;77@@/
Le /0BD doit permettre $ plusieurs applications de partager les donnes 9our cela" il doit
grer les conflits daccs 2 les dtecter et les solutionner3
)eci est possible gr#ce $ la notion de TRANSACTION et de dfinition dAL+ORIT7*ES
DE +ESTION DE LA CONCURRENCE,
Une tran0action e0t un en0e3/le indco3po0a/le dopration0 0ur la D dont
le9cution 3aintient la D dan0 un tat cohrent,
B6= ;BI@)&I1 = . /@)*:I&@ @& );71ID@7&I5LI&@ D@/ D;77@@/
Les donnes doi%ent +tre protges contre les pannes et contre les accs mal intentionns
Protection contre le0 panne0
;n distingue deux t(pes de pannes .
9annes simples caractrises par la perte du contenu de la mmoire centrale
9annes catastrop'i!ues caractrise par la perte du contenu des mmoires secondaires
N
Introduction aux Bases de Donnes
Dans les deux cas" il est possible de rcuprer un tat co'rent des donnes gr#ce $ lexistence
et $ la gestion de Fournaux de transactions" !ui gardent la trace dexcutions antrieures
Protection contre le0 acc20 3al intentionn0
La dfinition de droits daccs" de mots de passe etc grs par le /0BD permet la
confidentialit des donnes de la base et leur in%iolabilit
- LE! &25LE! E 2NN6E!
Diffrents modles de donnes existent lis aux diffrentes gnrations de bases de donnes
La premire dcennie 2annes MO3 caractrise la premire gnration et est base sur les
modles 'irarc'i!ue et rseau La deuxime dcennie 2annes >O3 a %u lmergence de
modles plus %olus" $ sa%oir les modles @ntit85ssociation" :elationnel et rseaux
smanti!ues !ui ont caractris la deuxime gnration Les annes =O ont %u apparaPtre des
modles permettant la modlisation de structures complexes de donnes" ce sont les modles
obFets" !ui caractrisent la troisime gnration 7ous prsentons ici deux exemples de bases
de donnes de premire gnration . les bases de donnes 'irarc'i!ues et bases de donnes
rseaux" ainsi !uun t(pe de base de donnes de deuxime gnration" les bases de donnes
relationnelles
D,# LE *ODMLE 7I-RARC7I=UE
*ne base donnes 'irarc'i!ue est une BD !ui utilise une structure de donnes 'irarc'i!ue
appele modle 'irarc'i!ue
411 L5 /&:*)&*:@ D@ D;77Q@/
La structure de donnes dun modle 'irarc'i!ue est une ar/ore0cence oL les nJuds
reprsentent des classes dentits et les arcs sont des associations entre ces entits,
;n appelle fils dun nJud 9re" lensemble des nJuds $ une distance 1 du nJud pre
*n attribut ou Item ou encore constituant" est la plus petite unit manipulable et prenant
des %aleurs dans un domaine de dfinition
Exemple : nom, rue, numro
*n groupe simple est un ensemble dattributs formant une arborescence
Exemple :
*n groupe compos est un ensemble tel !ue c'a!ue attribut est un groupe simple ou un
attribut
Exemple :
=
7Jud racine
7Juds terminaux . feuilles
7i% O
7i% 1
7i% 6
5dresse
:ue Cille )ode 9a(s
Introduction aux Bases de Donnes
*n groupe rptitif est un groupe compos dont un groupe peut se rpter plusieurs fois
Exemple :

7otion darborescence %alue . une arborescence %alue est un arbre dont les nJuds sont
%alus par des enregistrements logi!ues appels 0e43ent,
Exemple :
E1 Segment racine
M1 M2 M3 M4
ENS1 ENS2 ENS3 ENS3
Notion de 0ch3a conceptuel hirarchiIue :
*n sc'ma conceptuel 'irarc'i!ue est un ensemble dobFets possdant des proprits relis
par des liens 'irarc'i!ues Les liens pris en c'arge par le modle 'irarc'i!ue sont .
- 1-1 . un pre na !uun fils
- 1-7 . un pre $ 7 fils
Exemple :
#'# #'N
1O
9ersonne
7om 5dresse
:ue Cille )ode 9a(s
Date-naissance
Matricule 7om
@tudiant
Module 2M3
7umod 7ote
@tudiant
Module
@nseignant
Dpartement
)'ef -dept /er%ice
Introduction aux Bases de Donnes
416 IM9LQM@7&5&I;7 9G</IH*@ D*7@ BD GIQ:5:)GIH*@
Dfinition : une BD 'irarc'i!ue est un ensemble darborescences %alues faisant rfrence $
un m+me sc'ma
Il existe deux manires dimplmenter une BD 'irarc'i!ue" en utilisant une structure
s!uentielle ou une structure de liste
- /tructure s!uentielle
*ne arborescence %alue R un enregistrement de longueur %ariable
5 lintrieur de lenregistrement" les segments sont placs dans un ordre dfini
Exemple : enregistrement1 : d1--- c1----s1----s2----s3,

enregistrement2 : d2---c2---s4s5----s6-----s

Les enregistrements sont placs les uns $ la suite des autres pour obtenir un fic'ier s!uentiel
- /tructure de liste
@lle utilise des pointeurs 7ous distinguons trois t(pes de pointeurs .
9ointeur 9re . pour c'a!ue nJud" un pointeur pointe %ers le pre
9ointeur fils . pour le pre" un pointeur pointe %ers le premier fils gauc'e
9ointeur frre . tous les nJuds fils dun m+me ni%eau sont c'aPns entre eux
Exemple :
1-! 1-!
1-!
LE LAN+A+E DE *ANIPULATION DE DONNEES DLN#
Les LMD des modles 'irarc'i!ues sont des langages de t(pe procdural . ils
donnent au programmeur la possibilit de se dplacer dans une arborescence $ partir dune
position courante Le tableau sui%ant est une s(nt'se des principales instructions du langage .
@xemple dutilisation .
/oit la re!u+te sui%ante . trou%er toutes les commandes du client de numro D )1 E
0* client Sit' 7*M R T)1
@ti!1 . 07 commande 1;: &GI/ client commande 1;*7D U I1 7;& @AI&
9:I7& 7*M);MM57D@
0;&; eti!1
@AI&
11
)lient
)ommande 9aiement
9roduit
)1
)o1 )o1
91 96 96 9B
9a1 9a6
Introduction aux Bases de Donnes
Opration0 DLN# Si4nification De0cription de lopration
+U 0@& *7IH*@ 5ccs direct $ un segment
utilis pour laccs $ la racine
$ partir de la cl
+N 0@& 7@A& Dplacement dans
larborescence $ partir dun
nJud pour atteindre le nJud
successeur 2pr-ordre3
+NP 0@& 7@A& VI&GI7
95:@7&
Dplacement dans des nJuds
!ui ont le m+me pre
+7U
+7N
+7NP
0@& G;LD *7IH*@
0@& G;LD 7@A&
0@& G;LD 7@A& VI&GI7
95:@7&
5%ec %errouillage du segment
accd pour les suppressions
et modifications
RE*AR=UES :
- LaFout dun segment ne peut seffectuer !ue si les segments suprieurs dont il
dpend existent dans larbre
Exemple : l"a#out d"un produit ncessite l"existence d"un client a$ant command ce produit%
- La suppression dun segment entraPne la suppression de tous les segments !ui lui
sont rattac's
Exemple : la suppression d"un client entra&ne la suppression de toutes les commandes et des
produits%
- La modification dun segment entraPne la rec'erc'e de tous les segments !ui
contiennent linformation modifie
Exemple : la modi'ication du prix d"un produit ncessite la rec(erc(e de tous les clients a$ant
command ce produit%
Conclu0ion :
- La redondance de0 donne0 dan0 la /a0e e0t in8ita/le du fait de la
repr0entation par de0 0tructure0 ar/ore0cente0,
- Seul0 le0 lien0 de t1pe #'# 0ont pri0 en char4e dan0 le 3od2le hirarchiIue
D,& LE *ODMLE DE DONN-ES RESEAU6
4.2.1 LA STRUCTURE DE DONNES
*n rseau est un ensemble de nJuds et darcs 9our une reprsentation de donnes" les nJuds
reprsentent les obFets et les arcs" les associations entre ces obFets
Exemple :
16
Introduction aux Bases de Donnes
Description des obFets .
Les concepts dfinissant les obFets sont les sui%ants . latome" lagrgat" larticle ou
enregistrement logi!ue
Notion# : un atome 2data item3 est la plus petite unit de donnes possdant un nom *n
atome est reprsent par une %aleur dans la base
Notion & : un agrgat 2data aggregate3 est une collection datomes rangs conscuti%ement
dans la base et portant un nom
Notion ( : *n article ou enregistrement logi!ue 2record3 est une collection dagrgats et
datomes rangs cte $ cte dans la base de donnes et constituant lunit dc'anges entre la
BD et les applications
Description des associations
Lien
7ous distinguons trois t(pes de liens dans le modle rseau .
11 . $ un obFet de 5 correspond un et un seul obFet de B et %ice %ersa
1-7 . $ un obFet de 5 peut correspondre un $ plusieurs obFets de B mais in%ersement " $ un
obFet de B ne peut correspondre !uun seul obFet de 5 2lien 'irarc'i!ue3
M-7 . $ un obFet de 5 peut correspondre un $ plusieurs obFets de B et in%ersement
466 L@ M;DWL@ :Q/@5* );D5/<L
@n 1=M= a eu lieu la confrence appele );D5/<L !ui a normalis et prsent des concepts
communs pour la dfinition de sc'mas rseaux &ous les t(pes dobFets reprsents par des
nJuds sont identifis par des cls *ne cl est un atome ou un agrgat !ui permet didentifier
de manire uni!ue c'a!ue record
Exemple : le matricule d"un tudiant, le numro d"un 'ournisseur%
Les t(pes de liens supports par la norme );D5/<L sont les liens 1-1 et 1-7 Les liens M-7
ncessitent des transformations !ue nous %errons plus loin
Exemples :

M-! M-! )ous les liens expriment une composition
M-!

M-!
Donnes dintersection . dans certains cas" le lien possde des proprits !ui relient les
obFets en relation ;n les appelle des donnes dintersection
1B
:ecord 5
:ecord B
9roduit fini
9roduit semi-fini
9ice
Introduction aux Bases de Donnes
Exemple1 : le lien de composition entre produit 'ini, produit semi - 'ini et pi*ce poss*de la
proprit de +uantit%
Exemple 2
M-7 29rix3
Instances ou occurrences de sc'mas
1OOO1 1OOO6
1OO1 1OO? 1OOM
?N? ?N6 MBO M4O >?O NOO NO1 =OO
Le lien );D5/<L est appel /@&
*n /@& est un lien entre un enregistrement propritaire appel ;V7@: et un ou plusieurs
enregistrements membres appel M@MB@:
*n enregistrement ne peut +tre $ la fois propritaire et membre dun m+me /@& 2pas de
boucle3 )ependant un enregistrement peut +tre propritaire de plusieurs /@& diffrents et ou
membre de plusieurs /@& diffrents
46B IM9L@M@7&5&I;7 9G</IH*@ D@/ LI@7/
Le lien );D5/<L est implment gr#ce $ la liste circulaire ou anneau
Exemple :
&ransformation du lien M-7
Le lien M-7 ne peut +tre reprsent directement par );D5/<L" tant donn !uil ne
reprsente !ue les liens de t(pe 'irarc'i!ue 2oSner-member3
*n artifice est utilis !ui consiste $ crer un enregistrement intermdiaire a%ec deux liens 1-7
Exemple :
14
1ournisseur
9ice
9roduit fini
9roduit semi-fini
9iece
/ /1 /6 /n
:
: 1
#'N
Introduction aux Bases de Donnes

M-7
/@& fournit /@& sont fournis
Le record intermdiaire est cre en utilisant les donnes dintersection si elles existent" et
a(ant pour cl la concatnation des cls des records composant le lien
464 L@ L57050@ D@ M57I9*L5&I;7 );D5/<L
Le langage de manipulation de donnes );D5/<L est bas sur un ensemble de
primiti%es s(nt'tis par le tableau ci-aprs )ependant" il est bon de sa%oir !ue le s(stme
gre une table standard contenant .
- un pointeur par ensemble de donnes 2:@);:D3
- deux pointeurs par anneau 2/@&3
- un pointeur de t+te danneau
- un c'aPnon sur lanneau
- un pointeur par espace p'(si!ue contenant la base
- un pointeur programme dsignant le dernier enregistrement accd
Pri3iti8e0 De0cription0
.IND Localise un enregistrement et pro%o!ue
linitialisation des pointeurs courants
+ET :estitue dans la Xone d@8/ lenregistrement
dsign par le pointeur courant
CONNECT Insre lenregistrement dsign par le pointeur
courant dans un anneau
DISCONNECT @nl%e lenregistrement dsign par le
pointeur courant
RECONNECT &ransfre un record dans un autre anneau
ERASE /upprime lenregistrement dsign par le
pointeur courant
STORE 9ro%o!ue lcriture de lenregistrement plac
dans la Xone d@8/ et initialise le pointeur
courant !ui dsignera cet enregistrement
*ODI.) 9ro%o!ue la mise-$-Four $ partir de la Xone
d@8/ de lenregistrement dsign par le
pointeur courant
@xemples .
1?
1ournisseur
9ice
1ournisseur 9ice
1our - 9ice
Introduction aux Bases de Donnes
1 :ec'erc'e des informations sur le client D )L1 E
M;C@ T)L1 &; numcli I7 client
1I7D 57< client */I70 numcli I7 client
0@& client
6 Modifier ladresse du client D )L1 E
M;C@ T)L1 &; numcli I7 client
1I7D 57< client */I70 numcli I7 )LI@7&
0@& client
M;C@ Tnou%elleadresse &; adresse I7 client
M;DI1< client
D,( LE *ODELE ENTITENASSOCIATION O C7EN !#$;%"
Il est communment admis !ue la description de laspect stati!ue de la ralit
organisationnelle passe par la description de ses entits" de leurs proprits" des liens entre les
entits et des contraintes aux!uelles elles sont soumises )'en est parti de cet aspect descriptif
pour proposer un modle proc'e de la ralit
L@ M;D@L@ . L@/ );7)@9&/
Il est bas sur les concepts d@7&I&@ &<9@8 5//;)I5&I;7 &<9@ et sur deux
formes dabstraction . la classification et linstanciation

Entit : elle reprsente un obFet concret ou abstrait de la ralit
Exemple :
,e client - .tta' Mo(amed /, ,e compte numro 120005, le sminaire de 12 etc%
A00ociation : une association dentits est une combinaison dentits dans la!uelle
c'acune Foue un rle spcifi!ue
Exemple :
3.tta'" est a''ect au ser4ice compta5ilit
4%3%1%1%1%1%1%1 3.tta'" est titulaire du compte numro 120005
Entit t1pe : ensemble dentits a(ant des caractristi!ues communes appeles
proprits
;n parle aussi de classe entit et on note .
E : Pe
#
@ e
&
@ G,@ e
n
Q
*ne entit e
i
est une instance ou occurrence du t(pe 2 ou de la classe @3
Exemple :
)ous les clients sont caractriss par leur nom et leur adresse% !ous d'inirons une
classe 6,7E!) a$ant les attri5uts !8M et .29E::E%
A00ociation t1pe : ensemble ou classe dassociations similaires *ne association t(pe
est un sous-ensemble du produit cartsien des entits t(pe impli!ues
;n note .
R!E
i
@ E
L
@ G@E
p
"
R : P !E
i
9 E
L
9 G 9 E
p
"
Exemples :
EM;,8<E e!t a""ect# $ ;98=E) :
R%EM&LO'E(&RO)ET*
EM;,8<E +, 2E;.9)EME!) e!t a""ect# $ ;98=E) :
R%EM&LO'E( DE&ARTEMENT( &RO)ET*
1M
Introduction aux Bases de Donnes
*ne entit ou une association sont caractriss par le doublet Yattri/ut@ 8aleurZ . un
attribut est une fonction dune entit t(pe ou dune association t(pe sur un domaine ou un
produit cartsien de domaines
Exemples :
E:>e
1
? : @!om, 3.tta'",A, @2ate naissance, 325126B"A, @:alaire, 340C2"A
9 @E,;A : @2ate2e5, 30101D6"A, @2ateEin, 30101DD"A
!om appartient au domaine 6(ar@30A
2ate naissance appartient au domaine 7nt@6A
SC7E*A DENTITE T)PE
Il dfinit lentit t(pe en intention )est le nom de lentit t(pe sui%ie des noms
dattributs
Exemple : EM;,8<E @!8M, 2.)E!.7::.!6E, :.,.79EA
.tta', 25126B , 40C2
1enmo(amed, 121065 , 20C2
1enmiloud, 05063 , 10C2
SC7E*A DASSOCIATION T)PE
Il dfinit lassociation t(pe en intention )est le nom de lassociation t(pe sui%ie des
noms des entits t(pe la composant a%ec %entuellement les noms dattributs
Exemple :
.EEE6).)78! @ EM;,8<E, ;98=E) : 2.)E2E1, 2.)E7! A


LES .OR*ES DASTRACTION
Cla00ification : partir des informations de dtail et construire la classe
1>
7!:).!
6E:
EF)E!:78! 2E ,. 6,.::E
E1
E2
EG
91
;2
;i
:#:#$%@ :#:#$$
:#:&$;@ :K:#$$
#K#&$<@ (##&$$
7!:).!6E:
Introduction aux Bases de Donnes
In0tanciation : partir de la classe et dfinir ces instances
REPRESENTATION +RAP7I=UE : une entit t(pe est reprsente par un rectangle
alors !u$ lassociation t(pe est associ le losange
EFEM;,E :
Re3arIue : Les attributs sont simples et mono%alus
LES ASSOCIATIONS N'AIRES
EFEM;,E :
1N
INSTANCES OU
OCCURRENCES
T)PE
INSTANCIATION
CLASSI.ICATION
E*PLO)E
A..ECTATION
PRORET
7;M D5&@75I//57)@
D5&@D@B D5&@1I7
7*M@:; D*:@@
*EDECIN
ANAL)SE
PATIENT
PRESCRIT
Introduction aux Bases de Donnes
ASSOCIATIONS RECURSI5ES
*ne entit peut Fouer plusieurs rles dans une association t(pe
EFEM;,E :
ROLES
*ne entit peut Fouer plusieurs rles dans ses relations a%ec une autre entit t(pe
EFEM;,E :
1=
E*PLO)E
/*9@:CI/@
:;L@ 1 . @/& /*9@:CI/@
:;L@ 6 . /*9@:CI/@*:
E#
E&
E(
ED
,
,
@1
E(
E%
E;
E<
,
6
1
E*PLO)E PRORET
C7E.
PARTICIPANT
Introduction aux Bases de Donnes
CONTRAINTES I*POSEES A LA *ODELISATION
CLE
*ne cl est un attribut ou un groupe dattributs dont les %aleurs permettent didentifier de
manire uni!ue les entits dun m+me t(pe
La spcification de la cl dune entit t(pe impli!ue une contrainte dunicit sur
lextension de lentit t(pe
E-EM&LES :
EM&LO'E : NUMEM&
&RO)ET : NUM&RO)
La cl dune association t(pe est la combinaison des cls des entits t(pes
participantes
E-EM&LE :
A..ECTAT/ON : NUMEM&( NUM&RO)
CARDINALITES
La cardinalit est le nombre dassociations aux!uelles une entit peut participer
Il existe trois cardinalits prdfinies .
11 : $ une instance de 5 est associe une et une seule instance de B
#'N : $ une instance de 5 est associe une ou plusieurs instances de B
*'N : $ une instance de 5 est associe une ou plusieurs instances de B et
rcipro!uement
E-EM&LES :
6O
E#
E&
E(
ED
,
9:1
PR&
PR(
G
C#
P#
C&
A
Introduction aux Bases de Donnes

61
E*PLO)E PRORET
C7E.
PARTICIPANT
#
#
N #
E*PLO)E PRORET
A..ECTATION
# N
.OURNISSEUR
PRODUIT .OURNIT
N
*
Introduction aux Bases de Donnes
D,D LES ASES DE DONNEES RELATIONNELLES
441 L@ M;D@L@ :@L5&I;77@L 2 E,CODD #$;:"
Le modle relationnel est fond sur le concept mat'mati!ue de relation et in%ent par
);DD $ IBM /an Ios en 1=>O
Il lui est associ la t'orie de la normalisation dont lobFectif est llimination de certains
comportements anormaux des relations lors de mise-$-Four
446 L@/ );7)@9&/ D* M;D@L@
Notion 3ath3atiIue de relation
/oient D1" D6" K"Dn des ensembles de %aleurs 2domaines3 .
*ne relation : 2D1"D6"K"Dn3 est un sous ensemble du produit cartsien des domaines D1"
D6" K"Dn
R!D#@ D&@ G@ Dn" inclus dans D# 6 D& 6G6 Dn
*n tuple ou n-uplet dune relation est .
Sd#@ d&@G@dnT tel !ue d1 appartient $ D1
d6 D D D6
dn D D Dn
Tran0po0ition U la ralit conceptuelle
Les ensembles Di sont les domaines de %aleurs des proprits du monde rel
EFEM;,E: :
6(ar, 6(ar@30A, 7nt@6A, >E,M?,H

- Notion dattri/ut
*n attribut est une colonne de relation caractrise par un nom
Les attributs dune relation doi%ent +tre diffrents 9lusieurs attributs peu%ent +tre dfinis sur
le m+me domaine
- Notion de cl
*ne cl est un attribut ou groupe dattributs !ui identifie de manire uni!ue un tuple de
relation
- Sch3a de relation
Le sc'ma de relation est le nom de la relation sui%ie de la liste de ses attributs
66
Introduction aux Bases de Donnes
- Sch3a relationnel
)est lensemble des sc'mas de relations !ui dfinit une application
- a0e de donne0 relationnelle
)est une BD dont le sc'ma est un ensemble de sc'mas de relations 2sc'ma relationnel3" et
dont les occurrences 2instances3 sont les tuples de ces relations
EFEM;,E: :
EM;,8<E @!IMEM;, !8ME, 2.)!.7:, :.,.79EA
;98=E) @!IM;98=, 2I9EEA
2E;.9)EME!) @!IM2E;, !8M, !19EM;,A
6,7E!) @!IM6,7, !8M6, .29E::E6, 1.,.!6EA
E8I9!7::EI9 @!IME8I9,!8ME, .29E::EEA
;982I7)E8I9!7 @!IM;982, !IME8I9, ;97FA
:oit la relation EM;,8<E @!IMEM;, !8ME, 2.)!.7:, :.,.79EA
10101 .tta', 25126B , 40C2
10102 1enmo(amed, 121065 , 20C2
10103 1enmiloud, 05063 , 10C2
:eprsentation sous forme de tableau
EM&LO'E
NUMEM& NOME DATNA/S SALA/RE
10101 .tta' 25126B 40C2
10102 1enmo(amed 121065 20C2
10103 1enmiloud 05063 10C2
6B
INTENTIONS DE
RELATIONS
E6TENTION DE LA
RELATION