Sunteți pe pagina 1din 49

1

Curs: Informatic II (Baze de date)


Programa analitic:
1. Concepte de baz
2. Proiectarea BD
3. Dezvoltarea BD folosind SGBD ACCESS 2000
4. Limbajul SQL
5. Baze de date avansate:
Sisteme client/server
BD on-line
BD distribuite
BD multidimensionale
Evaluare:PV
Laborator 50%
Lucrare curs 50%
Bibliografie
2
Concepte de baz ale Bazelor de date -DB
Baz de date
Definiie:
Ansamblu de date structurate
Legate funcional
Stocate pe suporturi tehnice adresabile
Accesate de mai muli utilizatori de o manier
selectiv i ntr-un timp oportun
O baz de date se descrie independent de programele
care utilizeaz datele
Descrierea datelor formeaz Dicionarul Datelor i
vizeaz:
Structurile de date;
Legturile dintre date
Regulile care s asigure coerena datelor

3
Modele de date
Modelul IERARHIC
Modelul REEA
Modelul RELAIONAL
Modelul OBIECT
Permite modelarea realitii prin intermediul
obiectelor definite ca entiti cu identitate
proprie i caracterizate prin stare i
comportament
Modelul OBIECT-RELAIONAL
Un model de date este un ansamblu de concepte, o convenie
de reprezentare care permite descrierea datelor de administrat
4
Modele de date: modelul IERARHIC
Datele sunt organizate sub form de structur arborescent;
Datele sunt grupate n tipuri nregistrri ce descriu o ierarhie simpl (un
tat poate avea mai muli fii, n timp ce un fiu poate avea un singur tat)
Singurele asocieri posibile sunt 1-1 i 1-n
O nregistrare fiu nu poate exista independent de o nregistrare ierarhic
superioar tat de care este legat i nu poate fi manipulat independent
de aceasta

Servicii_funcionale
Angajai
Cod_serv Denumire_serviciu
Marca Nume_salariat Funcie Salariu

Servicii_funcionale
1 Conducere 8 Contabilitate
12 Ionescu Director 15000000
82 Popa Contabil 2000000
84 Petre V Ec. 3000000
83 Gogu G Ec. 4000000
DEZAVANTAJE
Dificultate n formularea interogrilor ce manipuleaz
simultan mai multe ramuri
Redundana informaiei ce antreneaz incoeren
5
Modele de date: modelul REEA
Datele sunt organizate sub form de reea;
Modelul reea completeaz modelul ierarhic (un nod printe poate
avea mai muli fii, n timp ce un fiu poate avea mai multe noduri
printe)
Asocierile posibile sunt 1-1; 1-n; m-n

Servicii_funcionale
Angajai
Cod_serv Denumire_serviciu
Marca Nume_salariat Salariu
Funciii
Cod_fun Denumire_funcie
6
Modele de date: modelul RELAIONAL
Un model de organizare bidimensional a datelor n
tabele
Implementeaz schema relaional (MRD)
Tabele
Relaii ntre tabele
Reguli de validare
Algebra relaional (Operatori relaionali)
Operatori de asambalare (Reuniunea, Produsul caretezian)
Operatori unari (Proiecia, Selecia)
Operatori de extensie (Compunerea, Diviziunea)
Un limbaj standard de gestiune a BDR
7
Modele de date: modelul RELAIONAL
Modelul relaional introdus de Codd n 1970 se fundamenteaz pe
noiunea matematic de relaie R(X
1
,X
2
,....X
n
)
unde, pentru fiecare element Xi se definete un domeniu de valori
Domeniul reprezint mulimea valorilor posibile care definesc o
anumit proprietate aferent unui obiect
Atributul reprezint mulimea valorilor existente n coloana pe care
o desemneaz n cadrul relaiei. ntr-o relaie pot exista mai multe
atribute care iau valori n aceleai domenii.
Relaiile se reprezint prin tabele care sunt supuse urmtoarele
restricii:
n fiecare coloan, toate valorile sunt de acelai tip;
Ordinea liniilor (tuplurilor sau nregistrrilor) nu este predefinit;
Nu sunt admise nregistrri duplicate
Coloanele sunt identificate prin nume distincte (atribute sau proprieti)
Tuplurile unei relaii se pot identifica de o manier unic prin
intermediul valorilor unuia sau mai multor atribute care joac rol de
CHEIE PRIMAR a relaiei respective
8
Modele de date: modelul RELAIONAL
Se numete DOMENIU PRIMAR acel domeniu pe care este definit
un singur atribut drept cheie primar
CHEIA EXTERN: Fiind dou relaii R1 i R2, cu atributele A1 i
A2 chei primare definite pe acelai domeniu primar D, se spune c
n relaia R1, A2 este cheie extern dac, utiliznd o parte din
valorile ei sau toate, pot fi regsite tuplurile relaiei R2 (altfel spus,
un atribut al unei relaii este cheie extern, dac se regsete pe
post de cheie primar n alt relaie)
R1(A1,B1,C1,D1,A2) R2(A2,B2,C2,D2)
Relaii
Chei primare
Cheie extern
9
Modele de date: modelul RELAIONAL
RESTRICIILE DE INTEGRITATE depind de semantica valorilor
domeniilor
Integritatea entitii prin care valorile cheii primare trebuie s fie
diferite de zero
Integritatea referirii potrivit creia valorile unei chei externe trebuie s
se refere la tuplurile unei alte relaii
ALTE RESTRICII care se aplic asupra domeniilor (validri prin
care se reflect alte corelaii de ordin valoric)
SCHEMA unei relaii este format din:
Numele relaiei
Atributele relaiei
Restriciile de integritate
10
Dup utilizarea n ntreprindere:
Baze de date operaionale (BD de domeniu) = nucleul sistemului
informaional al ntreprinderii
Baze de date de informare a executivului (EIS)
Baze de date multidimensionale (OLAP)
Baze de date externe (On-Line)

Dup modul de accesare:
BD colective
BD individuale

Dup modul de stocare i localizare a datelor:
BD locale (Stocate pe server i distribuite Clienilor)
BD distribuite (stocate n dif. Puncte ale unei reele
distribuite)


Tipologia Bazelor de Date
11
Rol :
Interfa ntre BD i utilizatori
Permite:
Crearea
Consultarea
Actualizarea BD
SGBD = un instrument de asamblare, codificare, aranjare, protecie i
regsire a datelor n BAZELE DE DATE

Funcii principale:
descrierea datelor prin schemele: extern, conceptual, intern i
legturile corespondente, prin intermediul unui limbaj specializat (LDD)
vizeaz deopotriv structurile de date, legturile ntre acestea i
regulile care s asigure coerena datelor (numite i reguli de
integritate)
manipularea datelor (LMD)
Interogarea bazelor de date
Actualizarea datelor
protejarea bazelor de date
utilizatori, drepturi de acces, reluare n caz de pan, copii de
siguran
Administrator BD
BD
DD
SGBD
Utilizator final 1
Utilizator final n
Programe de
aplicaii
SGBD
12
SGBD: niveluri de descriere a datelor

Nivelul intern de descriere a BD se face de ctre Administratorul BD
care:
Definete schema intern de organizare a datelor
Definete regulile de trecere de la schema conceptual la cea
intern
Nivelul conceptual de descriere a BD se face de ctre
Administratorul ntreprinderii
Nivelul extern de descriere a BD se face de ctre Administratorul
aplicaiei, care:
Definete schema extern
Definete regulile de coresponden cu schema conceptual

13
Niveluri de reprezentare a unei Baze de
date










Schema
extern
1

Schema
extern
2

Schema
extern
n

Grup utilizatori
1


Grup
utilizatori
2


Grup
utilizatori
n


Schema
conceptual
Proces
modelare
Schem
fizic
BD
Nivel extern Nivel
conceptual
Nivel fizic
Domeniul de
studiu

14
SGBD
SGBDR
Pentru baze de date n volume mici/ medii
ACCESS, Visual Fox, Dbase, Approach
Date n volume medii/mari
Oracle, Informix, etc.

15


















Problem

Proiectare
BD

Schema relaional
MRD

LDD

LMD

( )
Descriere

Manipularea

datelor

LDD, limbaj de descriere date, LMD, limbaj de manipulare date
SGBD
BD
Dezvoltarea unei aplicaii cu baze de date
Proiectarea BDR
normalizare
Modelul E-A
conversia MCD - MRD
16
Normalizarea se bazeaz pe urmtoarele concepte:
Proces de normalizare
Dependena funcional
Diagrama dependenelor funcionale
Dependene Inter-Tabele i Multivaloare
Forme normale
Matricea dependenelor funcionale
Etapele proiectrii MR prin normalizare
Exemplul II (facturi ctre clieni)
Exemplul III (editur)

Normalizarea Bazelor de Date
17
DD
+RG
NORMALIZARE
MRD
Normalizarea Bazelor de Date:
Procesul de normalizare
Normalizarea este un demers ce conduce la construirea
modelului relaional al bazei de date
Se descompune o tabel complex n subtabele mai mici i mai uor de
manipulat

SCOP: Normalizarea garanteaz coerena bazei de date n timpul
operaiilor de actualizare (CMS) de date, evitnd redundanele
REZULTAT: Un model ne-decompozabil ce respect regulile de
definire semantic i de integritate a datelor
18
Exist o dependen funcional ntre 2 atribute atunci cnd
cunoscnd valoarea luat de ctre un atribut, se furnizeaz
sistematic valoarea pentru cellalt atribut
X -> Y (Y depinde funcional de X, dac la orice valoare a lui X
corespunde n orice moment o valoare unic a lui Y)
Exemple de dependene funcionale:
Cod Produs -> Denumire produs
Cod Produs -> Pre de referin
Numr Comand -> Dat Comand
Numr Comand -> Cod Client -> Nume Client
-> Cod Fiscal
Normalizarea Bazelor de Date:
Dependena funcional
Dac un atribut sau un grup de atribute dintr-un tabel determin
funcional celelalte atribute ale tabelului, rezult c atributul sau grupul de
atribute constituie cheia primar a tabelului
Tranzitivitate:
Dac X -> Y i Y -> Z, atunci
X ->Z
19
Reprezentarea grafic a dependenelor funcionale
Normalizarea Bazelor de Date:
Diagrama dependenelor funcionale
Cod Produs
Denumire, UM, Pre de referin
NrComand
Cod Produs
Dat comand, Cantitate comandat
20
Dependene Inter-Tabele (1-1)
Cnd la o valoare a atributului Cheie primar dintr-o tabel, se
asociaz o singur valoare a atributului Cheie primar dintr-o alt
tabel, se poate spune c exist o dependen funcional ntre
tabele, exprimat prin dependena funcional dintre atributele
chei primare aferente celor dou tabele
Normalizarea Bazelor de Date:
Dependene Inter-Tabele i Multivaloare
Nr.factur
Cod Client
Dependene Multivaloare (1-n) (n-m)
n cazul n care la o valoare a atributului Cheie primar dintr-o
tabel, corespund mai multe valori ale altui atribut dintr-o alt
tabel, se poate spune c exist o dependen funcional
multivaloare
Nr.factur
Cod Produs
CodProfersor
Cod Carte
21
Dicionar de date i Reguli de gestiune
Potrivit regulilor de gestiune coroborate cu
analiza informaional referitoare la aplicaia
de informatizat se declar ntr-un tablou toate
atributele disponibile (Identificatorul +
Denumirea n clar)
Normalizarea Bazelor de Date :
Formele normale 1, 2, 3
DD+RG




1FN



2FN


3FN
1 FN
O relaie R este n 1FN atunci cnd atributele sale nu pot fi
descompuse n uniti mai mici
2 FN
O relaie R este n 2FN, dac este n 1FN i toate dependenele
ntre cheia primar a lui R i celelalte atribute a lui R sunt
elementare (atributele nu depind de o parte din cheie)
3 FN
O relaie R este n 3FN, dac este n 2FN i dac sunt eliminate
toate dependenele funcionale tranzitive (dac nu exist nici o
dependen funcional ntre atributele non-cheie)
22
Normalizarea Bazelor de Date :
Formele normale BC, 4, 5
3FN






Boyce-Codd




4FN



5FN

Boyce-Codd
O relaie R este n forma BC dac este n
3FN i dac fiecare determinant n
diagrama de dependene este un candidat
pentru a deveni cheia relaiei.
Dac o relaie are un identificator
concatenat, unul dintre elementele care-l
compun nu trebuie s depind de alt
atribut
4 FN
O relaie R este n 4FN, dac este n forma BC i dac nu exist
dou dependene funcionale multivaloare n aceeai relaie
5 FN
O relaie R este n 5FN, dac este n 4FN i trateaz cazurile n
care exist mai multe dependene funcionale multivaloare care
sunt interlegate ntre ele
23
Exemplu Forma Normal Boyce-Codd
CURS(Cod disciplin, Numr grup, Cod profesor
PROFESOR(Cod profesor, Cod disciplin)
CURS(Cod profesor, Numr grup)
GRUP(Numr grup)
24
Formalizarea procesului de normalizare este
operaional prin Matricea Dependenelor
Funcionale:
MDF are pe linie toate atributele dicionarului de
date
MDF are pe coloan toate atributele sau numai
atributele care pot avea rol de cheie primar
Se noteaz 1 la intersecia liniei cu coloana pentru
care exist dependen funcional
Se noteaz 1
T
dependenele funcionale tranzitive
Liniile care NU AU 1 desemneaz fie atribute care nu sunt
dependente funcional de un identificator simplu, fie
desemneaz atribute parametru

Normalizarea Bazelor de Date:
Matricea Dependenelor Funcionale
25
Inventarierea atributelor (se vor selecta toate atributele referitoare la facturile
primite)
Numr factur
Dat factur
Cod furnizor
Denumire furnizor
Adresa, etc.
Normalizarea Bazelor de Date:
Etapele procesului de NORMALIZARE
Se specific regulile de gestiune i algoritmii de calcul asociai (se vor specifica
diversele restricii i condiii impuse datelor)
O factur este emis de un singur furnizor
Codul materialului este unic
O factur conine mai multe produse aprovizionate
Furnizorii pot fi numai persoane juridice
Algoritmii de calcul: (Val_mat_fact=Cant_facturat*Pre_unitar)
26
Se ntocmete dicionarul datelor
Un atribut poate fi nscris o singur dat n dicionar
Se elimin atributele sinonime (de ex. Cod furnizor = Simbol furnizor)
Dicionarul datelor nu admite atribute derivate sau calculate (Valoare, TVA)
Normalizarea Bazelor de Date:
Etapele procesului de NORMALIZARE
Nr.crt Atribut n clar
1 CodFz Cod Furnizor
2 DenFz Denumire Furnizor
3 AdrFz Adres Furnizor
4 NrFact Numr Factur
5 DataFact Dat Factur
27
Se stabilesc dependenele funcionale ntre atribute prin MDF
Normalizarea Bazelor de Date:
Etapele procesului de NORMALIZARE
CodFz DenFz AdrFz NrFact DataFact
CodFz NU 1 1
DenFz NU
AdrFz NU
NrFact 1 1
T
1
T
NU 1
DataFact NU
28
Sau se stabilesc dependenele funcionale ntre atribute prin DDF
Normalizarea Bazelor de Date:
Etapele procesului de NORMALIZARE
Numr Factur
Dat Factur
Cod Furnizor
Denumire Furnizor
Adres Furnizor
29
Pentru atributele izolate se vor cuta grupuri de atribute ce pot
constitui determinani ai acestora
Toate atributele sau grupurile de atribute determinante, devin
CHEI CANDIDATE (posibile chei ale relaiei). Cheile candidate
aparinnd aceleiai relaii sunt caracterizate prin dependene
funcionale reciproce.
Se stabilesc CHEILE PRIMARE dintre cheile candidate
Cu fiecare cheie primar i cu atributele determinate direct (fr
tranzitivitate) se formeaz o nou relaie.
Se stabilesc CHEILE EXTERNE
Normalizarea Bazelor de Date:
Etapele procesului de NORMALIZARE
FURNIZOR(CodFz, DenFz, AdrFz)
FACTUR(NrFact, DataFact, CodFz)
30
Normalizarea Bazelor de Date:
EXEMPLUL II: Evidena facturilor emise
FN1
Descompunerea atributelor compuse ale dicionarului de date n
atribute simple i precizarea identificatorului.
Dicionar (NrFact, CodCli, Nume, Telefon, Fax,: Strada, Nr, CodPostal,
Localitate , DenProd, PretRef, DataFact, CodProd, CantFact, PretFact)
FN2
Fiecare atribut non-cheie s depind de ntreaga cheie primar.
CLIENT (CodCli, Nume, Telefon, Fax, Strada, Nr, CodPostal, Localitate)
FACTURA(NrFact, DataFact, CodCli)
PRODUS(CodProd, DenProd, PretRef)
FACTURAT(NrFact, CodProd, CantFact, PretFact)
FN3
Eliminarea dependenelor tranzitive
CLIENT (CodCli, Nume, Telefon, Fax, Strada, Nr, CodPostal)
FACTURA(NrFact, DataFact, CodCli)
PRODUS(CodProd, DenProd, PretRef)
FACTURAT(NrFact, CodProd, CantFact, PretFact)
LOCALIZARE(CodPostal, Localitate)
31
EXEMPLUL III: Enun + RG
O editur dorete informatizarea activitii legate de evidena
stocurilor de carte produse, a autorilor i a facturilor ctre clieni.
Reguli de gestiune:
a. O carte primete un alt Cod ISBN la fiecare retiprire;
b. Clienii editurii sunt numai persoane juridice;
c. Preul de vnzare se stabilete n momentul producerii unei
cri, acesta fiind un pre orientativ, rmnnd neschimbat
pn la epuizare, preul efectiv de vnzare fiind negociat cu
fiecare client;
d. Numrul unei facturi i codul ISBN luate mpreun sunt
unice la nivel naional;
e. Numele unei persoane juridice este considerat unic la nivel
naional;

32
EXEMPLUL III D.A.
1

Cod ISBN

2

Denumire carte

3

Data apariiei

4

Stocul tiprit

5

Preul de baz

7

Numr factur

8

Data factur

9

Cantitatea facturat

10

Denumire Carte facturat
11

Pret Carte factur
12

Valoare Carte factur
13

Total factur
14

Cod Fiscal Client
15

Denumire Client
16

Adresa client
17

Telefon
18

CNP autor
19

Nume Prenume
20

Data naterii
21

Adresa autor

Din studiul activitii
editurii au rezultat
urmtoarele atribute:
Se elimin atributele
sinonime i calculate
CRI
Cod ISBN
.........
AUTORI
CNP autor
.........
CLIENI
CF client
.........
FACTURI
Nr Factur
.........
?
?
33
C
o
d

I
S
B
N
D
e
n
u
m
i
r
e

c
a
r
t
e
D
a
t
a

a
p
a
r
i
t
i
e
i
S
t
o
c
u
l

t
i
p
a
r
i
t
P
r
e
t

d
e

b
a
z
a
N
u
m
a
r

f
a
c
t
u
r
a
D
a
t
a

f
a
c
t
u
r
a
C
a
n
t
i
t
a
t
e

f
a
c
t
u
r
a
t
a
P
r
e
t

c
a
r
t
e

f
a
c
t
u
r
a
C
o
d

f
i
s
c
a
l

c
l
i
e
n
t
D
e
n
u
m
i
r
e

c
l
i
e
n
t
A
d
r
e
s
a

c
l
i
e
n
t
T
e
l
e
f
o
n
C
N
P

a
u
t
o
r
N
u
m
e

p
r
e
n
u
m
e
D
a
t
a

n
a
s
t
e
r
i
i
A
d
r
e
s
a

a
u
t
o
r
Cod ISBN 1 1 1 1
Denumire carte
Data aparitiei
Stocul tiparit
Pret de baza
Numar factura 1 1 1
T
1
T
1
T
Data factura
Cantitate
facturata
Pret carte
factura
Cod fiscal
client 1 1 1
Denumire
client 1 1 1
Adresa client
Telefon
CNP autor 1 1 1
Nume prenume
Data nasterii
Adresa autor
Cod ISBN +
Numar factura 1
T
1
T
1
T
1
T
1
T
1 1 1
T
1
T
1
T
1
T
Matricea dependentelor functionale
34
CRI

Nume camp

Tip date

Obligatoriu

Unic

Integritate
Referentiala

Reguli de
validare
Cod ISBN

Text,
13,M

Da

Da





Denumire carte

Text, 50

Da







Data aparitiei

Date/Time

Da





<=Data curenta

Stocul tiparit

Currency

Da





>0

Pret baza

Currency

Da





>0

AUTORI

Nume camp

Tip date

Obligatoriu

Unic

Integritate
Referentiala

Reguli de
validare

CNP

Number,LI

Da

Da





Nume prenume

Text, 50

Da






Adresa

Text, 100

Da






Data nasterii

Date/Time

Da





<=Data curenta

AUTORI-CRI

Nume camp

Tip date

Obligatoriu

Unic

Integritate
Referentiala

Reguli de
validare

CNP

Number,LI Da



Da



Cod ISBN

Text,13,M

Da

Da



CONINUT
FACTUR
........
Cod ISBN
........
35
FACTURI

Nume camp

Tip date

Obligatoriu

Unic

Integritate
Referentiala

Reguli de validare

Serie factura

Text,5,M

Da

Da





Numar factura

Number, LI Da





Cod Fiscal

Number , LI

Da



Da



CONINUT FACTUR
Nume camp

Tip date

Obligatoriu

Unic

Integritate
Referentiala

Reguli de validare

Serie factura

Text,5,M

Da

Da

Da



Numar factura

Number, LI Da

Da



Cod ISBN

Text, 13,M

Da

Da


Cantitate fact

Number, Int Da





>0

Pret factura

Currency

Da





>0

CLIENI

Nume camp

Tip date

Obligatoriu

Unic

Integritate
Referentiala

Reguli de validare

Cod fiscal

Number, LI Da

Da





Denumire client

Text,50

Da

Da





Adresa

Text,100

Da







Telefon

Text,20









36
37
Algebra relaional
Algebra relaional poate fi definit ca un set de operatori, care
prelucreaz relaii n scopul obinerii altor relaii.

Operatorii relaionali se pot grupa n:
operatori de baz, care pot genera toat clasa operatorilor
relaionali
operatori auxiliari

Operatorii relaionali de baz se mpart n :
operatori de asamblare (reuniunea, intersecia, diferena,
produsul cartezian);
operatori unari (proiecia, selecia);
operatori de extensie
38
Algebra relaional: Operatori de Asamblare
Operatorii de asamblare sunt operatori binari, care
primesc la intrare dou relaii i genereaz la ieire o
singur relaie.

Operatorii de asamblare sunt:
Reuniunea;
Intersecia;
Diferena;
Produsul cartezian.
Operatori
Binari
Relaie3
Relaie1
Relaie2
39
Algebra relaional: Operatori de Asamblare:R
Reuniunea a dou relaii R i S, cu aceeai structur, unde R este
format din n tupluri i S este format din m tupluri, are ca
rezultat o a treia relaie T, avnd aceeai structur cu a relaiilor
surs i coninnd m+n tupluri.
Relaia R
A

B

C

a1

b1

c1

a2

b2

c2

Relaia S
A

B

C

a3

b3

c3

a4

b4

c4

a5

b5

c5

Relaia T (R reunit cu S)
A

B

C

a1

b1

c1

a2

b2

c2

a3

b3

c3

a4

b4

c4

a5

b5

c5

40
Algebra relaional: Operatori de Asamblare:I
Intersecia a dou relaii R i S cu aceeai structur este o relaie
T, (cu aceeai structur), coninnd tuplurile identice aparinnd
att lui R ct i lui S.
Relaia R

A

B

C

a1

b1

c1

a2

b2

c2

a4

b4

c4

Relaia S

A

B

C

a3

b3

c3

a4

b4

c4

a5

b5

c5

Relaia T (R
intersectat cu S)
A

B

C

a4

b4

c4

41
Algebra relaional: Operatori de Asamblare:D
Diferena a dou relaii R i S avnd aceeasi structur (R-S), este
o relaie T, cuprinznd mulimea tuplurilor aparinnd lui R dar
neaparinnd lui S.

Relaia R
A

B

C

a1

b1

c1

a2

b2

c2

Relaia S
A

B

C

a3

b3

c3

a4

b4

c4

a5

b5

c5

Relaia T R-S
A

B

C

a1

b1

c1

a2

b2

c2

42
Algebra relaional: Operatori de Asamblare:PC
Produsul cartezian a dou relaii R i S (RxS) este o relaie T
stocnd mulimea perechilor obinute prin concatenarea
nregistrrilor aparinnd lui R cu cele aparinnd lui S.
Relaia R

A

B

a1

b1

a2

b2

Relaia S

C

D

E

c1

d1

e1

c2

d2

e2

c3

d3

e3

Relaia T RxS

A

B

C

D

E

a1

b1

c1

d1

e1

a1

b1

c2

d2

e2

a1

b1

c3

d3

e3

a2

b2

c1

d1

e1

a2

b2

c2

d2

e2

a2

b2

c3

d3

e3

43
Algebra relaional: Operatori Unari
Operatorii unari se aplic asupra unei relaii i genereaz
o alt relaie.
Operatorii unari sunt:
Proiecia;
Selecia;
Relaie1
Operatori
Unari
Relaie2
44
Algebra relaional: Operatori Unari:Pr
Proiecia unei relaii R dup anumite atribute, este relaia R1 cu
structura R1 (A
i1
, A
i2
, , A
ip
), ale crei tupluri se obin prin eliminarea
valorilor atributelor din R care nu apar n R1 i prin suprimarea sau
nesuprimarea tuplurilor multiple.
Altfel spus, prin intermediul proieciei, dintr-un tabel cu un anumit
numr de coloane se obine unul cu un numr mai mic de coloane
Relaia R

A

B

C

D

a1

b1

c1

d1

a2

b2

c2

d2

a3

b3

c3

d3

R1 (R;A,B)
Relaia R1
A

B

a1

b1

a2

b2

a3

b2

45
Algebra relaional: Operatori Unari:Pr
Altfel spus, prin operatorul de selecie, dintr-un tabel cu un anumit
numr de coloane se obine unul cu aceleai coloane, dar cu un numr
mai mic de rnduri.
Selecia relaiei R fa de criteriul Q este relaia R1 cu aceeai structur
ca i R, ale crei tupluri satisfac criteriul specificat.

Relaia R

A

B

a1

b1

a2

b2

a3

b3

R1SELECTIE(R;A=a2
OR A=a3)
Relaia R1

A

B

a2

b2

a3

b3

46
Algebra relaional: Operatori de Extensie
Operatorii de extensie joac un rol foarte important n
interogarea bazelor de date relaionale.
Operatorii de extensie sunt:
Compunerea;
Diviziunea.
47
Algebra relaional: Operatori de Extensie: Join
Compunerea natural este o echicompunere pe R
1
i R
2
dup toate
atributele avnd acelai nume n R
1
i R
2
, urmat de o proiecie care
permite conservarea unuia dintre aceste atribute, egale ca nume
Relaia R1

A

B

C

a1

b1

c1

Relaia R2

B

D

b1

d1

b1

d2

Relaia
TJOIN(R1,R2;B
i =
B
j
)

A

B

C

D

a1

b1

c1

d1

a1

b1

c1

d2

48
Algebra relaional: Operatori de Extensie: Div
Diviziunea relaiei R
1
(A
1
, A
2
A
n
) prin relaia R
2
(A
p+1
, , A
m
) este
relaia E (A
1
, A
2
, , A
p
) format din toate tuplurile care, concatenate cu
fiecare tuplu din R
2,
d totdeauna un tuplu din R
1
(E = R
1
R
2
).
Relaia RS

A

B

C

D

E

a1

b1

c1

d1

e1

a2

b2

c2

d2

e2

a3

b3

c3

d3

e3

Relaia S

C

D

E

c1

d1

e1

c2

d2

e2

c3

d3

e3

Relaia R

A

B

a1

b1

a2

b2

a3

b3

49
SGBD ACCESS : Caracteristici generale
Utilizeaz modelul relaional n gestiunea bazelor de date
Aplicaia ACCESS conine un ansamblu de colecii de obiecte tip
Tabel(Table)
Interogare(Query)
Formular(Form)
Raport(Report)
Pagin Web(Page)
Macro(Macro)
Modul(Module)
Dispune de o interfa prietenoas pentru construirea obiectelor tip i
de numeroi asistei(Wizard-uri)
Permite schimbul de date cu alte aplicaii
Permite lucru n reele de calculatoare
Permite programarea :
Declarativ(QBE, SQL, aciuni n obiecte macro)
Procedural(VBA)