Documente Academic
Documente Profesional
Documente Cultură
2013-2014
Structura modelului
Mihaela Muntean-2013
Modelul relaional
Mihaela Muntean-2013
Modelul relaional
Mihaela Muntean-2013
Mihaela Muntean-2013
Nrmatricol:D1
301
302
.
Nume:D2
Popa Elena
Anton Dan
.
Facultate:D3
COM
REI
.
Relaia STUDENTI:
D1: {x| x N, x[1, 10000]}
D2: domeniul cu numele de persoane
D3: {CSIE, COM, REI, MK, FIN, MAN}
Mihaela Muntean-2013
Mihaela Muntean-2013
Facultate:D3
COM
REI
.
Nume:D2
Popa Elena
Anton Dan
.
Nrmatricol:D1
301
302
.
Nume:D2
Popa Elena
Anton Dan
.
Facultate:D3
COM
REI
.
Mihaela Muntean-2013
Mihaela Muntean-2013
Facultate:D3
COM
REI
.
Nume:D2
Popa Elena
Anton Dan
.
Mihaela Muntean-2013
Mihaela Muntean-2013
Definirea asocierilor
Mihaela Muntean-2013
Mihaela Muntean-2013
Mihaela Muntean-2013
Algebra relaional
reuniunea
diferena
produsul cartezian
proiecia
selecia
jonciunea.
Mihaela Muntean-2013
Mihaela Muntean-2013
comenzi
Clienti
codc
denc
1 Deck Computers
2 Python
3 Expert Computers
4 Acer
Mihaela Muntean-2013
nrcom datai
loc
Bucuresti
Bucuresti
Cluj
Cluj
termen
val
codc
1000
10/8/2011
11/10/2011
1800
1001
10/10/2011
11/30/2011
200
1002
10/2/2011
11/20/2011
200
1003
10/8/2011
11/15/2011
1000
1004
10/9/2011
11/15/2011
200
1005
10/9/2011
11/16/2011
200
1006
10/12/2011
12/20/2011
300
1007
10/12/2011
12/15/2011
200
1008
10/13/2011
11/25/2011
200
1009
10/17/2011
11/25/2011
400
Comanda SELECT
Select atribut [[as] alias {, atribut [as] alias]}
From tabela [[as] alias] {, [[as] alias]}
[where conditii_pe_tupluri]
[group by list_de_atribute_pentru_grupare]
[having condiii_pe_grupuri]
[order by lista_de_atribute_pentru_ordonare]
Mihaela Muntean-2013
Produsul cartezian
Mihaela Muntean-2013
Produsul cartezian
denc
Python
Python
Python
Python
Python
Python
Python
..
nrcom
1010
1009
1008
1007
1006
1005
1004
.
Mihaela Muntean-2013
Selecia
Mihaela Muntean-2013
Mihaela Muntean-2013
Mihaela Muntean-2013
Proiecia
Mihaela Muntean-2013
Mihaela Muntean-2013
denc
loc
1 Deck Computers
Bucuresti
2 Python
Bucuresti
3 Expert Computers
Cluj
4 Acer
Cluj
Mihaela Muntean-2013
Jonciunea
Mihaela Muntean-2013
Tipuri de jonctiuni:
Mihaela Muntean-2013
Jonciune de egalitate:
Select * from clienti inner join comenzi on
clienti.codc = comenzi.codc;
jonctiune_de_egalitate
clienti.
denc
codc
1 Deck Computers
Bucuresti
1000
10/8/2011 11/10/2011
1800
1 Deck Computers
Bucuresti
1003
10/8/2011 11/15/2011
1000
1 Deck Computers
Bucuresti
1004
10/9/2011 11/15/2011
200
1 Deck Computers
Bucuresti
1005
10/9/2011 11/16/2011
200
2 Python
2 Python
3 Expert Computers
Bucuresti
Bucuresti
Cluj
200
200
200
2
2
3
3 Expert Computers
Cluj
200
4 Acer
4 Acer
4 Acer
Cluj
Cluj
Cluj
300
400
1000
4
4
4
Mihaela Muntean-2013
loc
nrcom datai
termen
val
comenzi.codc
Mihaela Muntean-2013
Mihaela Muntean-2013
Mihaela Muntean-2013
Sef
Marinescu
Bujor
R1
Angajat
Ionescu
Popescu
Dumitru
Departament
Vnzri
Producie
Producie
Mihaela Muntean-2013
Departament
Vnzri
Producie
Producie
Sef
null
Marinescu
Marinescu
R1
Angajat
Ionescu
Popescu
Dumitru
Sef
Marinescu
Bujor
Departament
Vnzri
Producie
Producie
Mihaela Muntean-2013
Departament
Producie
Producie
Contabilitate
Sef
Marinescu
Marinescu
Bujor
R1
Angajat
Ionescu
Popescu
Dumitru
Sef
Marinescu
Bujor
Departament
Vnzri
Producie
Producie
Mihaela Muntean-2013
Departament
Vanzari
Producie
Producie
Contabilitate
Sef
null
Marinescu
Marinescu
Bujor
Jonciune de neegalitate
Angajati
Marca
100
101
102
Nume
Muntean
Ionescu
Florea
Salariu
1000
1500
2000
Trepte de salarizare
Treapta
1
2
3
SALMIN
500
1000
2000
Mihaela Muntean-2013
SALMAX
1000
2000
5000
Nume
Muntean
Ionescu
Florea
Treapta
1
2
3
Restriciile de integritate
Mihaela Muntean-2013
Mihaela Muntean-2013
cheie primar
Mihaela Muntean-2013
Restriciile de integritate
minimale
Restricia entitii
Mihaela Muntean-2013
Valoare necunoscut
Valoarea inexistent
Mihaela Muntean-2013
Restricia referenial
Mihaela Muntean-2013
Mihaela Muntean-2013
Mihaela Muntean-2013
Alte restricii :
Mihaela Muntean-2013
Mihaela Muntean-2013
Mihaela Muntean-2013
Limbajul SQL
(structured query language)
Mihaela Muntean-2013
Mihaela Muntean-2013
Limbajul SQL
predefinite de standard
Mihaela Muntean-2013
Create schema
SQL Server(Transact-SQL):
CREATE SCHEMA Schema_profesor AUTHORIZATION profesor
CREATE TABLE note (nr.matricol int, note int)
GRANT SELECT TO student1
DENY SELECT TO student2;
ALTER SCHEMA .
DROP SCHEMA ..
Mihaela Muntean-2013
Mihaela Muntean-2013
Mihaela Muntean-2013
Mihaela Muntean-2013
Mihaela Muntean-2013
Definirea restriciilor de
integritate
se declar atunci cnd se creeaz tabelele
pot fi ulterior adugate/ terse/ dezactivate (ALTER TABLE ADD/
DROP/ DISABLE/ ENABLE)
Restricia entitii (not null)
Restricia unicitii (unique)
Nume character(20) not null, Prenume character(20) not null, unique
(nume, prenume),
Mihaela Muntean-2013
Definirea restriciilor de
integritate
Mihaela Muntean-2013
Mihaela Muntean-2013
Mihaela Muntean-2013
Oracle
Alter table clienti add column adresa char(30)
Stergerea tabelelor
Drop table comenzi
Mihaela Muntean-2013
Mihaela Muntean-2013
Mihaela Muntean-2013
Tabela virtual
Mihaela Muntean-2013
Mihaela Muntean-2013
Mihaela Muntean-2013
pstrarea secretului
asigurarea integritii datelor
valabilitatea datelor
Mihaela Muntean-2013
Mihaela Muntean-2013
Mihaela Muntean-2013
privilegii :
SELECT
INSERT (atribut)
DELETE
REFERENCES(atribut)
Numai proprietarul poate executa CREATE, ALTER i DROP.
Mihaela Muntean-2013
Mihaela Muntean-2013
Mihaela Muntean-2013
INSERT
UPDATE
DELETE
Mihaela Muntean-2013
Exemple (Oracle)
insert into clienti values (5, 'Vector Software', 'Bucuresti') ;
update clienti set loc='Cluj' where codc =5;
delete from clienti where loc='Cluj';
delete from clienti where codc not in (select distinct codc
from comenzi);
Mihaela Muntean-2013
DELETE *
FROM clienti
WHERE loc="Deva";
Mihaela Muntean-2013
Comanda SELECT
Mihaela Muntean-2013
Mihaela Muntean-2013
Exemple (Access)
Mihaela Muntean-2013
Mihaela Muntean-2013
Mihaela Muntean-201
Mihaela Muntean-2013
Mihaela Muntean-2013
Mihaela Muntean-2013
Mihaela Muntean-2013
Mihaela Muntean-2013
Prin atribut simplu (atribut atomic) se nelege un atribut care nu mai poate fi
descompus n alte atribute, n caz contrar, atributul este compus (atribut
neatomic).
Exemplu:
Data calendaristic este un atribut compus: zi, lun, an;
Adresa este un atribut compus: strada, nr, bloc, scara, etaj, apartament,
localitate, jude;
Un grup repetitiv este un atribut (grup de atribute) dintr-o relaie care apare cu
valori multiple pentru o singur apariie a cheii primare a relaiei nenormalizate.
Cod
agent
3
Nume
Zona
Cod
agent
vnzri client
Ionescu Est
18765
18830
19242
Popescu Vest
18841
18899
19565
Mihaela Muntean-2013
Numeclient
Delta Systems
Sony Systems
Altex SRL
Computers
SRL
Python
Expert SRL
Cod
depozit
4
3
3
2
2
1
Locaie
Militari
Pantelimon
Pantelimon
Berceni
Berceni
Voluntari
Cantitate
vndut
10000
20000
30000
10000
20000
30000
Nume
Zona
agent
vnzri
Ionescu Est
Ionescu Est
Ionescu Est
Popescu Vest
Cod
client
18765
18830
19242
18841
4
4
Popescu Vest
Popescu Vest
18899
19565
Numeclient
Cod
depozit
Delta Systems 4
Sony Systems 3
Altex SRL
3
Computers
2
SRL
Python
2
Expert SRL
1
Locaie
Cantitate
vndut
Militari
10000
Pantelimon 20000
Pantelimon 30000
Berceni
10000
Berceni
Voluntari
20000
30000
Mihaela Muntean-2013
Vanzari
codagent
codclient
cantitatevanduta
Depozite
coddepozit
locatie
Mihaela Muntean-2013
Clienti
codclient
numeclient
coddepozit
R2
Departament
Producie
Contabilitate
Sef
Marinescu
Bujor
Intrebari
R1
Angajat
Ionescu
Popescu
Dumitru
Departament
Vnzri
Producie
Producie
Completati corect:
Intrebari