Documente Academic
Documente Profesional
Documente Cultură
2018
Operatorii relaţionali
MODELUL DE DATE RELAŢIONAL Restricţiile de integritate
BUCUREŞTI
2018-2019
1
26.10.2018
Domeniul Relaţia
Pentru un ansamblu de domenii D1, D2, ..., Dn Relaţia reprezintă un subansamblu al produsului cartezian al
produsul cartezian al acestora reprezintă ansamblul mai multor domenii, care este caracterizat printr-un nume şi
tuplurilor <v1, v2, ..., vm>, unde: v1 este o valoare conţine tupluri cu semnificaţie.
aparţinând domeniului D1, v2 este o valoare din D2 Într-o relaţie, tuplurile trebuie să fie distincte (nu se admit
ş.a.m.d. duplicări).
Relaţia
Atributul
R : {<a, 1, α >, <b, 2, β >} Atributul reprezintă coloana unei tabele de date,
caracterizată printr-un nume. Numele coloanei (atributului)
Reprezentare ca tabel bidimensional exprimă, de regulă, semnificaţia valorilor din cadrul coloanei
respective.
D3 D1 D2
a 1 α Tuplul
b 2 β
Tuplul reprezintă linia unei tabele de date şi nu are nume.
Extensia unei relaţii: ansamblul tuplurilor care compun
la un moment dat relaţia Cheia
Numărul tuplurilor dintr-o relaţie reprezintă cardinalul Cheia desemnează un atribut sau un ansamblu de atribute
relaţiei, în timp ce numărul valorilor dintr-un tuplu care are rolul de a identifica o înregistrare dintr-o tabelă.
defineşte gradul acesteia.
2
26.10.2018
R A1 A2 A3 A4
3
26.10.2018
R A1 A2 A3 A4
Selecţia Selecţia
δcondiţie (R)
Reprezintă operaţia definită asupra unei relaţii R,
R [condiţie]
care constă din construirea unei relaţii S, cu aceeaşi
schemă ca R şi a cărei extensie este constituită din RESTRICT (R, condiţie)
acele tupluri din R care satisfac condiţia menţionată
explicit în cadrul operaţiei. ANGAJATI
Nume Varsta Salariu δ(salariu>2000 or nume=Mircea)
Implică efectuarea de tăieturi orizontale asupra Ion 25 3000 Nume Varsta Salariu
relaţiei R, adică eliminarea unor tupluri ale relaţiei. Mihai 30 2000 Ion 25 3000
Anca 25 3000 Anca 25 3000
Sofia 30 2000 Mircea 30 2000
Mircea 30 2000
4
26.10.2018
5
26.10.2018
R1 ⋈ R2
6
26.10.2018
SELECT *
FROM angajati a JOIN comenzi c
USING (id_Ang);
7
26.10.2018
8
26.10.2018
◦ R1 – R2
◦ REMOVE (R1, R2)
◦ MINUS (R1, R2)
9
26.10.2018
Diferenţa Ce afişează?
NU!
DE CE?
Clienti – Comenzi
Clienti – Comenzi
DA
Intersecţia Intersecţia
Reprezintă o operaţie definită pe două relaţii, R1 şi
R2 ambele cu aceeaşi schemă, prin care se obţine o
nouă relaţie, R3, cu schema identică cu a relaţiilor
operand şi cu extensia formată din tuplurile din R1
şi R2.
Clienti Comenzi
◦ R1 R2
◦ INTERSECT (R1, R2)
◦ AND (R1, R2)
10
26.10.2018
11
26.10.2018
12
26.10.2018
13
26.10.2018
14
26.10.2018
CURSUL 5...
Baze de date relaţionale
15