Sunteți pe pagina 1din 30

ACADEMIA DE STUDII ECONOMICE BUCUREŞTI

FACULTATEA DE CIBERNETICĂ, STATISTICĂ ŞI INFORMATICĂ ECONOMICĂ

B A Z E D E DAT E
RELAŢIONALE

BUCUREŞTI
2020-2021
DEFINIŢIE BDR

• O bază de date relaţională (BDR) reprezintă un


ansamblu de relaţii (tabele de date) împreună cu
legăturile dintre ele.

2
ETAPE DE REALIZARE A UNEI BDR

1. Analiza de sistem
2. Proiectarea bazei de date
3. Implementarea bazei de date
4. Punerea în funcţiune şi exploatarea bazei de
date
5. Întreţinerea bazei de date

3
ANALIZA DE SISTEM

1. Analiză structurală (statică) - analiza componentelor sistemului


(entităţilor) şi a legăturilor (asocierilor) dintre acestea. Conduce la
obţinerea modelului structural (static) al sistemului;
2. Analiză dinamică (de comportament, temporală) - analiza stărilor
sistemului şi a tranziţiilor posibile între aceste stări, în raport de anumite
evenimente. Conduce la obţinerea modelului dinamic al sistemului;
3. Analiză funcţională - analiza cerinţelor informaţionale, respectiv a
transformărilor de date (a tranzacţiilor) din cadrul sistemului. Conduce la
obţinerea modelului funcţional al sistemului economic;
4. Integrarea modelelor sistemului economic (structural, dinamic şi
funcţional) în scopul corelării şi completării lor.

4
ANALIZA STRUCTURALĂ

• Are ca obiectiv evidenţierea componentelor (entităţilor)


din cadrul sistemului, pentru care urmează să se colecteze
şi să se memoreze date în cadrul bazei de date, precum şi
evidenţierea legăturilor dintre aceste componente;
• Cea mai utilizată tehnică de analiză structurală este tehnica
entitate-asociere (E-R: Entity-Relationship), introdusă de
P.P.S. Chen, în anul 1976

5
ANALIZA STRUCTURALĂ (2)

• Tehnica entitate-asociere permite construirea modelului


structural sub forma unei diagrame entitate-asociere prin
parcurgerea următorilor paşi:
a. identificarea componentelor (entităţilor) din cadrul
sistemului economic;
b. identificarea asocierilor dintre entităţi şi calificarea
acestora;
c. identificarea atributelor aferente entităţilor şi a asocierilor
dintre entităţi;
d. stabilirea atributelor de identificare a entităţilor.

6
ANALIZA STRUCTURALĂ (3)

a. Identificarea componentelor (entităţilor) din cadrul sistemului economic

EXEMPLU: activitatea comercială dintr-o organizaţie economică

Descrierea entităţilor

7
ANALIZA STRUCTURALĂ (4)

EXEMPLU: activitatea comercială dintr-o organizaţie economică

8
ANALIZA STRUCTURALĂ (5)
b. Identificarea asocierilor dintre entităţi şi calificarea acestora

Asocierile dintre entităţi pot fi clasificate după mai multe criterii, şi anume:
A.Cardinalitatea asocierii:
1. gradul asocierii (maximele cardinalităţii):
a) asocieri de tip unu la unu;
b) asocieri de tip unu la mulţi;
c) asocieri de tip mulţi la mulţi.

9
ANALIZA STRUCTURALĂ (6)
b. Identificarea asocierilor dintre entităţi şi calificarea acestora

Asocierile dintre entităţi pot fi clasificate după mai multe criterii, şi anume:
A.Cardinalitatea asocierii:
2. obligativitatea participării entităţilor la asociere (minimele
cardinalităţii):
a) asocieri parţiale;
b) asocieri totale (complete).

10
ANALIZA STRUCTURALĂ (7)
b. Identificarea asocierilor dintre entităţi şi calificarea acestora

Asocierile dintre entităţi pot fi clasificate după mai multe criterii, şi anume:
A.Cardinalitatea asocierii:
3. concomitent după gradul asocierii şi după obligativitatea
participării la asociere:
a) asocieri parţiale de tip unu la unu;
b) asocieri totale de tip unu la unu;
c) asocieri parţiale de tip unu la mulţi;
d) asocieri totale de tip unu la mulţi;
e) asocieri parţiale de tip mulţi la mulţi;
f) asocieri totale de tip mulţi la mulţi.

11
ANALIZA STRUCTURALĂ (8)

b. Identificarea asocierilor dintre entităţi şi calificarea acestora

Asocierile dintre entităţi pot fi clasificate după mai multe criterii, şi anume:
B.Numărul de entităţi distincte care participă la asociere:
1. asocieri binare (între două entităţi distincte);
2. asocieri recursive (asocieri ale entităţilor cu ele însele);
3. asocieri complexe (între mai mult de două entităţi distincte).

12
IDENTIFICAŢI ENTITĂŢILE ŞI
ASOCIERILE!
 Se doreşte evidenţa clienţilor şi a comenzilor încheiate de
aceştia.
 De-a lungul timpului, clientul poate realiza câte comenzi
doreşte, pentru el sau pentru cunoscuţii săi.
CLIENT COMANDĂ
Identificarea entităţilor:
Identificarea asocierilor (obligativitate + cardinalitate):
 Asociere binară
 Un client poate să efectueze una sau mai multe comenzi
 O comandă trebuie să fie plasată de un singur client
efectuează
CLIENT COMANDĂ
este realizată
13
IDENTIFICAŢI ENTITĂŢILE ŞI
ASOCIERILE!
 Se doreşte evidenţa angajaţilor şi a managerilor acestora.
 Fiecare angajat are un manager, iar un manager poate
controla mai mulţi angajaţi.

Identificarea entităţilor: ANGAJAT

Identificarea asocierilor (obligativitate + cardinalitate):

 Asociere recursivă
conduce
 Un angajat poate să fie condus ANGAJAT
de un singur manager
este condus
 Un manager poate conduce
unul sau mai mulţi angajaţi
14
ANALIZA STRUCTURALĂ (9)
b. Identificarea asocierilor dintre entităţi şi calificarea acestora

Asocierile dintre entităţi pot fi clasificate după mai multe criterii, şi anume:
C.Semnificaţia asocierii:
1. “este-un” (generalizare);
2. “este-conţinut-în” (agregare).

15
ANALIZA STRUCTURALĂ (10)

EXEMPLU: activitatea comercială dintr-o organizaţie economică

16
ANALIZA STRUCTURALĂ (11)
c. Identificarea atributelor aferente entităţilor şi a asocierilor între entităţi

• Un atribut poate fi:


– Atribut compus. Este un atribut constituit din cel puţin două alte atribute.
Valoarea sa este reprezentată de valorile atributelor componente;
– Atribut calculat (dedus). Reprezintă un atribut a cărui valoare nu este cunoscută
direct, ci calculată pe baza valorilor altor atribute;
– Atribut simplu. Reprezintă un atribut care nu este nici compus şi nici calculat.
Valorile sale sunt valori atomice;
– Atribut repetitiv (multivaloare). Este un atribut care, la un moment dat, are mai
multe valori care apar sub forma unei liste de valori.

17
ANALIZA STRUCTURALĂ (12)
EXEMPLU: activitatea comercială dintr-o organizaţie economică

18
ANALIZA STRUCTURALĂ (13)

d. Stabilirea atributelor de identificare a entităţilor

• Un atribut poate fi considerat de identificare dacă:


– oferă o identificare unică a instanţelor unei entităţi;
– posedă o semnificaţie;
– este uşor de utilizat;
– este scurt.

19
ANALIZA STRUCTURALĂ (14)
EXEMPLU: activitatea comercială dintr-o organizaţie economică

20
ANALIZA DINAMICĂ

• Are drept scop explicarea comportamentului


entităţilor din domeniul economic analizat.
• Presupune:
a. identificarea stărilor în care se pot afla componentele
sistemului
b. identificarea evenimentelor care determină trecerea
unei componente dintr-o stare în alta
c. stabilirea succesiunii (fluxului) de evenimente

21
ANALIZA FUNCŢIONALĂ

• Are drept scop determinarea transformărilor de date care


se produc în cadrul sistemului în scopul satisfacerii
cerinţelor informaţionale aferente acestui sistem.
• Presupune:
a. identificarea datelor de intrare şi a datelor de ieşire din
sistem
b. construirea diagramelor de flux prin care sunt reflectate
legăturile procedurale dintre intrări şi ieşiri
c. identificarea restricţiilor şi precizarea criteriilor de
optimizare

22
PROIECTAREA STRUCTURII BAZEI
DE DATE

• Constă din următoarele activităţi:


a. proiectarea schemei conceptuale;

b. proiectarea schemei externe (logice);

c. proiectarea schemei interne (fizice, de memorare).

23
PROIECTAREA STRUCTURII BAZEI
DE DATE

a. Proiectarea schemei conceptuale a BDR presupune:


 stabilirea colecţiilor de date şi definirea detaliată a
conţinutului acestora;
 determinarea legăturilor dintre colecţiile de date şi a
modului de reprezentare a acestora în cadrul schemei
conceptuale;
 testarea schemei obţinute şi revizuirea acesteia, dacă
este cazul.

24
PROIECTAREA STRUCTURII BAZEI
DE DATE

b. Proiectarea schemei externe a BDR presupune:


 realizarea tabelelor virtuale (views);
 folosirea mecanismelor de acordare a drepturilor de
acces la BDR.

c. Proiectarea schemei interne a BDR presupune:


 stabilirea modului de organizare fizică a datelor;
 stabilirea căilor de acces la acestea;
 realizarea de indecşi şi clustere.

25
PROIECTAREA SCHEMEI
CONCEPTUALE INIŢIALE A BDR

Schema conceptuală iniţială a BDR se poate obţine în două


moduri:
A. se realizează maparea entităţilor şi a asocierilor în relaţii.
Este o variantă top-down de utilizare a tehnicii de
normalizare a relaţiilor;
B. se constituie o relaţie unică, aşa numita relaţie universală,
din atributele tuturor entităţilor şi asocierilor - varianta
bottom-up.

26
PROIECTAREA SCHEMEI
CONCEPTUALE INIŢIALE A BDR
Regulile de mapare sunt următoarele:
a. o entitate devine o tabelă, numele tabelei fiind pluralul
numelui entităţii;
b. o instanţă devine un tuplu al relaţiei;
c. un atribut devine o coloană. Pentru atributele obligatorii se
vor declara restricţii de tip NOT NULL;
d. un identificator primar devine o cheie primară;
e. un identificator secundar devine cheie unică;
f. o legătură se transformă într-o coloană pe care se declară o
cheie externă. Dacă participarea entităţii referite este
obligatorie, pe lângă cheie externă se declară şi o restricţie de
tip NOT NULL.

27
PROIECTAREA SCHEMEI CONCEPTUALE
INIŢIALE A BDR

ANGAJATI
Marca Cheie primară
Nume Not Null
Prenume Not Null
Data_nasterii Not Null
Telefon
Email
Data_angajarii Not Null
Din maparea entităţilor
Salariu Not Null
ANGAJAT şi
Comision Not Null
DEPARTAMENT rezultă
Id_departament Cheie externă, face legătura cu tabela DEPARTAMENTE
tabelele ANGAJATI şi
Id_manager Cheie externă, face legătura cu coloana Marca a tabelei, arată care este şeful
DEPARTAMENTE fiecărui angajat

DEPARTAMENTE
Id_departament Cheie primară
Denumire Not null
Id_manager Cheie externă, face legătura cu coloana Marca a tabelei ANGAJATI, se arată care
este managerul fiecărui departament. Restricţie NOT NULL.

28
STUDIU DE CAZ
1. Să se construiască diagrama enititate-asociere pentru următorul scenariu.
2. Să se proiecteze schema conceptuală a bazei de date relaţionale.

Studiul de caz tratează gestiunea activităţii unei unităţi hoteliere.


În vederea cazării, un client poate solicita rezervarea uneia sau mai multor camere prin e-mail
sau telefonic. Pentru aceasta furnizează recepţionerului informaţii privind perioada de cazare şi
tipurile de camere solicitate. Clienţii vor beneficia de reduceri dacă rezervă cel puţin 3 camere
sau dacă perioada de cazare depăşeşte 5 zile. Recepţionerul verifică disponibilitatea camerelor
şi îl înştiinţează pe client de acest lucru precum şi de costul estimat al cazării. Dacă nu există
camere disponibile conform solicitării, recepţionerul poate oferi clientului alternative. De
asemenea, clientul poate solicita un discount (suplimentar sau nu), iar recepţionerul va decide
fezabilitatea discountului, fiind asistat obligatoriu de managerul hotelului. În situaţia în care
clientul este de acord cu preţul propus, se va proceda la realizarea rezervării. Pentru clienţii
noi, recepţionerul solicită datele de identificare, pe care le introduce în aplicaţie.
Odată ajuns la hotel, şi dacă a făcut în prealabil o rezervare, clientul va furniza datele de
identificare ale sale şi/sau ale rezervării şi se face cazarea. Dacă nu există o rezervare, se va
verifica disponibilitatea camerelor pentru perioada cerută. Atunci când se găseşte o astfel de
cameră, se face cazarea. La finalul sejurului, recepţionerul întocmeşte o listă cu toate serviciile
solicitate de client şi preţul acestora. Lista trebuie validată de client, după care se întocmeşte
factura finală. Factura poate fi plătită parţial sau integral, prin transfer bancar, numerar sau
folosind un card bancar. Totodată, înainte de a părăsi hotelul, clientul este rugat să completeze
un formular prin care să evalueze serviciile oferite de unitatea hotelieră. 29
CURSUL 6...

• Baze de date relaţionale – Tehnica normalizării

30

S-ar putea să vă placă și