Documente Academic
Documente Profesional
Documente Cultură
Popovici
Curs 4 TEORIA GENERALĂ A BAZELOR DE DATE
4.1 Standardul CODASYL pt. fişiere şi baze de date
CODASYL (Conference on Data System Languages) 1971, 1974: terminologie, limbaje de descriere a datelor
Terminologia: dată elementară, grup de date, înreg. logică, înreg. fizică, cheie, set de date, fiier, index,
zonă, bază de date (BD), dicţionarul datelor, sistemul de gestiune al BD (SGBD), administratorul BD.
Limbajele: — limbajul pt. definirea datelor (LDD; Data Definition Language DDL);
— limbajul pentru manevrarea datelor (LMD; Data Manupulation Language DML).
— limbajul pt. integritatea datelor (LID, Data Integrity Language — DIL).
Implementare: a) limbaje separate (CODASYL); b) părţi ale aceluiaşi limbaj ( sublimbaje; ex.: SQL).
Interfaţa utilizatori-SGBD: — aplicaţii ce apelează subprograme/funcţii ale SGBD ( „cu limbaj-gazdă”);
— comenzi independente, interpretate de interfaţă ( SGBD „autonom”).
1
4.3 Modelul entitate-legătură simplu
Modelul entitate-legătură (MEL) simplu (P. Chen, 1976) — reprezentare grafică a datelor şi relaţiilor
dintre ele, prin entităţi, relaţii şi atribute; diagrama entitate-legătură.
Entitate (E): — persoană obiect, activitate semnificative pentru ansamblul modelat,
— reprezentată grafic printr-o casetă cu text (substantiv unic, scris cu majuscule; de ex., CLIENT).
— are ataşată o cheie primară (K), cu valori identificând unic conţinutul entităţii (de ex., Nr. client).
Atribut (A): — proprietate descriptivă a unei entităţi,
— indicat prin substantiv (nu unic), scris cu minuscule, sub numele entităţii (de ex., Nume client);
— numele lui se subliniază, dacă face parte dintr-o cheie primară.
Legătură: — raport între două entităţi, indicând existenţa şi tipul asocierii între valorile lor (1:1, 1:n, m:n)
— reprezentată grafic printr-o linie unind casetele entităţilor, eventual cu trident (pt. 1:n, m:n);
— indicată printr-un verb, care nu este specific legăturii;
— are eventual o cardinalitate max. (1:1, 1:n sau m:n, fără parant.), şi una min. (1:1, 1:0, 0:0, cu parant.).
PRODUS
ORDIN DE Conţine
CLIENT Trimite Nr. produs
COMANDĂ 1:n (1:1)
Nr. client 1:n (1:0) Nume produs
Nr. ordin
Nume client Nr. culoare
Data
Cod judeţ Nume culoare
Nr. client Apare
Preţ unitar
Conţine Nr. produs 1:n (1:0)
1:n (1:0) Cantitate
JUDEŢ
BIROU
Cod judeţ
Nr. birou
Nume judeţ Serveşte Nume birou
Nr. birou 1:n (1:0)
Calea de acces a interogării: succesiunea de entităţi de la o entitate de început la alta de sfârşit.
Paşi de realizare: P1) identificarea entităţilor (şi denumirea lor), P2) identificarea legăturilor (şi stabilirea
cardinalităţilor), P3) identificarea atributelor (şi denumirea lor), P4) stabilirea cheilor primare.
4.4 Modelul entitate-legătură extins
Modelul entitate-legătură extins (MELE) = MEL+ entităţi speciale + operaţii cu entităţi.
Tipuri de entităţi: — entitate independentă (EI) (definirea nu depinde de alte entităţi);
— entitate dependentă (ED): — nu poate exista fără altă entitate E,
— cheia ei primară include cheia primară a E corespunzătoare şi un atribut al ED,
— caseta ED are laturile mai subţiri decât caseta E;
— subentitate (sE): — entitate subordonată altei entităţi, numită supraentitate(SE);
— cheia primara, atributele şi legăturile SE sunt şi ale sE, dar nu şi invers;
— caseta sE este în interiorul casetei SE;
— procedeul de obţinere a sE din SE este numit moştenire.
Clasă(C): — grup de sE mutual exclusive, relative la aceeaşi SE;
— casetele sE sunt aliniate pe orizontală, în interiorul casetei SE;
— în diagramă, atributele comune nu sunt indicate decât pentru SE
— SE se numeşte supraclasă (SC), grupul sE — subclasă (sC), iar procedeul — clasificare.
Specificare: trecerea de la SC la o sC, prin determinarea atributelor moştenite şi a celor suplimentare.
Generalizare: trecerea de la sC la SC (inversa specificării).
Moştenire multiplă: atributele entităţilor dintr-o sC sunt moştenite de la mai multe SC.
Categorisire: procedeul de modelare a moştenirii multiple.
Paşi de realiz. (pt. fiecare pereche de entităţi {E1 , E2 } , atribute { A1 , A2 } şi perechi de chei primare {K1' , K2' } ):
P1) Se compară A1 cu A2 ; dacă A1 A2 sau A2 A1 , se execută salt la P2;
dacă A1 A2 , atunci una dintre entităţi este inutilă şi este eliminată;
dacă A1 A2 , entităţile nu sunt interesante pentru MELE, STOP. Altfel, salt la P3.
P2) Dacă K1' K 2' sau K 2' K1' şi dacă diferenţa dintre ele constă doar dintr-un singur atribut,
atunci entitatea cu cheia primară mai mare este dependentă de cealaltă, STOP.
P3) Dacă K1 K 2' , atunci entitatea cu mai multe atribute este o sE a celeilalte, STOP.
'
2
Ex. 1. REPREZENTANŢĂ (Nume întreprindere, Nume reprezentanţă, Adresă, Domeniu de activitate) —
dependentă de ÎNTREPRINDERE (Nume întreprindere, Adresă, Domeniu de activitate).
Ex. 2. ÎNTREPRINDERE (Nume întreprindere, Adresă, Domeniu de activitate),
ÎNTREPRINDERE INDUSTRIALĂ, ÎNTREPRINDERE COMERCIALĂ, cu câte un atribut suplimentar:
Tip producţie (cu valorile unicat sau serie), Tip comerţ (cu valorile: cu amănuntul şi en gros).
ÎNTREPRINDERE INDUSTRIAL-COMERCIALĂ — cu ambele atribute suplimentare.
Administratorul
întreprinderii ÎNTREPRINDERE REPREZENTANŢĂ
Nume întreprindere Posedă Nume întreprindere
Adresă Nume reprezentanţă
Domeniu de activitate Aparţine Adresă
Procesorul Administratorul Domeniu de activitate
Administratorul
schemei aplicaţiilor BD
BD
conceptuale
ÎNTREPRINDERE
Procesorul Procesorul Nume întreprindere
schemei schemei Adresă
interne externe Domeniu de activitate
ÎNTREPRINDERE ÎNTREPRINDERE
Transformare Transformare Transformare INDUSTRIALĂ COMERCIALĂ
intern- intern- extern- Tip producţie Tip comerţ
alocare conceptual conceptual
3
4