Documente Academic
Documente Profesional
Documente Cultură
Capitolul III
Regulile modelului
relational
Cerintele nefunctionale
si de performanta
Cerintele de calitate
(flexibilitate, stabilitate)
Facilitatile SGBD-ului
2. Modelul relaional
Concepte utilizate
Baz de date relaional - un ansamblu de relaii (tabele) aflate n legtur
Relaie (tabel)
Domeniu
2. Modelul relaional
Concepte utilizate (cont.)
Cheie - ansamblul minimal de atribute prin care se poate identifica n mod unic orice
tuplu dintr-o relaie
Cheie candidat - un atribut sau o combinaie de atribute care s joace rolul de cheie
Cheie primar o cheie candidat aleas special
Cheie secundar o cheie candidat care nu a fost aleas cheie primar
Cheie strin (extern) - un atribut care apare ntr-o tabel i care este cheie primar
n alt tabel. Ea este utilizat pentru stabilirea legturilor ntre tabele.
Restricie de integritate referenial - pentru cheia strin se admite orice valoare
nenul care se regsete ntre valorile cheii primare din tabela-printe
Exemplu
2.
Factura
Fact_id
Fact_nr
Fact_data
(1,1)
Factura
Fiecrei facturi i va
corespunde cel mult o
recepie sau nici una,
iar o recepie are la
baz exact o factur.
Fact_id
Fact_nr
Fact_data
Corespunde
Receptie
(0,1)
Receptie
Rec_id
Rec_nr
Rec_data
Rec_id
Rec_nr
Rec_data
Fact_id [FK] NOT NULL
Emitere
Furnizor
Furn_id
Furn_nume
Factura
(0,M)
Factura
Fact_nr
Fact_data
Fact_nr
Fact_data
Furn_id [FK] NOT NULL
Reguli de transformare:
entitatea aflat de partea M va conine cheia strin
NU se admit valori nule pentru cheia strin
(1,M)
Comanda
cmdId
cmdNumar
AgentComercial
agentId
agentNume
Comanda
cmdId
cmdNumar
agentId [FK] NULL
Reguli de transformare:
entitatea aflat de partea M va conine cheia strin
se admit valori nule pentru cheia strin
Reguli de transformare:
se creeaz cte o tabel aferent celor dou entiti
se creeaz a treia tabel, aferent legturii M:N, numit entitate asociativ
conine cheile primare ale celor dou entiti i eventualele atribute
ale legturii M:N
cheia primar este format, de regul, prin combinarea celor dou
chei strine
sunt situaii cnd n compoziia cheii primare trebuie introduse i
alte atribute, pe lng cele dou chei strine
nu se admit valori nule pentru cheile strine
Prod_id
Prod_den
(0,M)
Cantitate
Contine
Pret
(1,M)
Factura
Fact_nr
Fact_data
Articol_factura
Prod_id [FK]
Fact_nr [FK]
Cantitate
Pret
Factura
Fact_nr
Fact_data
ANGAJAT
Marca_angajat
Nume
Alte_date
(1,1)
Conduce
(0,M)
ANGAJAT
Marca_angajat
Nume
Alte_date
Marca_manager [FK]
ARTICOL
Cod_articol
Denumire
Cost
ARTICOL
Cod_articol
Denumire
Cost
(0,M )
Contine
Cantitate
ARTICOL_COMPONENT
Cod_articol
Cod_componenta [FK]
Cantitate
Reguli de transformare:
se creeaz cte o tabel aferent celor trei entiti
se creeaz a patra tabel, aferent legturii ternare, numit entitate asociativ
(tabel copil)
tabela copil conine cheile primare ale celor trei entiti, ce vor fi chei strine,
i eventualele atribute ale legturii ternare
1
Proiect
Pr_id
Pr_den
Documentatie
Intocmeste
1 Doc_nr
Doc_termen
Proiect
Pr_id
Pr_den
Doc_proiect
Pr_id [FK]
Doc_nr [FK]
Ang_id [FK]
Documentatie
Doc_nr
Doc_termen
In tabela Doc_proiect exista trei variante pentru stabilirea cheii: Pr_id si Doc_nr;
Pr_id si Ang_id; Doc_nr si Ang_id.
Exam_data
N Student
Stud_id
Stud_nume
Examin
eaza
Exam_nota
Disciplina
Disc_id
Disc_den
Profesor
Prof_id
Prof_nume
Examen
Stud_id [FK]
Disc_id [FK]
Exam_data
Prof_id [FK]
Exam_nota
Student
Stud_id
Stud_nume
Formatie
Form_id
Form_nrang
Lucreaza
Nr_ore
Formatie
Form_id
Form_nrang
Loc_munca
Locm_id
Locm_den
Angajat
Ang_id
Ang_nume
Pontaj
Ang_id [FK]
Form_id[FK]
Locm_id [FK]
Nr_ore
Loc_munca
Locm_id
Locm_den
Strategia
cte o
tabel
pentru
fiecare
subclas
DocInsotitor
idDocInsotitor [PK]
tipDocument
nrDoc
dataDoc
dataOperare
mijlTransport
Receptie
idReceptie [PK]
tipDocument
nrDoc
dataDoc
dataOperare
facturaPrimita
DocConsum
idDocConsum [PK]
tipDocument
nrDoc
dataDoc
dataOperare
numarComanda : NULL
locConsum
Strategia
cte o
tabel
pentru
fiecare
clas
DocInsotitor
idDocInsotitor [PK]
idDocument [FK]
mijlTransport
Receptie
idReceptie [PK]
idDocument [FK]
facturaPrimita
(0,1)
(1,1)
Document
idDocument [PK]
nrDoc
(1,1)
dataDoc
(0,1)
dataOperare
DocConsum
idDocConsum [PK]
idDocument [FK]
numarComanda
locConsum
(1,1)
(0,1)
Strategia
o singur
tabel
pentru
ntreaga
ierarhie
BunMaterial
codMaterial [PK]
denumireMaterial
um
contEvidenta
durataUtilizare : NULL
perioadaAcordare : NULL
procentCheltuieli : NULL
tipBunMaterial
Carte
ISBN
Titlu
Cota
Stare
Atributele
multivaloare Cota si
Stare sunt separate
ntr-o tabel distinct.
Ea se mai numete i
entitate atributiv.
Carte
ISBN
Titlu
Copie
Cota
Stare
ISBN [FK]
2.
Stabilirea unui prefix unic pt fiecare tabela, care sa fie utilizat ca parte a
numelor atributelor
3.
4.
6. Mecanismul tranzacional al BD
6.1 Definirea mecanismului tranzacional
Tranzacie
ansamblu de operaiuni executate mpreun asupra bazei de date
o unitate logic de prelucrare care garanteaz consistena bazei de date
O baz de date este ntr-o stare consistent dac datele respect toate restriciile de
integritate definite asupra lor
6. Mecanismul tranzacional al BD
6.2 Exemplu tranzacie Adugare factur
Denumire
operaiune
Tip acces
Explicaii
Adugare
factur
FACTURA
Insert
Adugare
articole factur
ARTICOLFACTURA
Insert
Actualizare
sold client
CLIENT
Update
Actualizare
stocuri
PRODUS
Update
6. Mecanismul tranzacional al BD
6.3 Proprietile tranzaciilor