1
-
Upload
renee-holder -
Category
Documents
-
view
20 -
download
0
description
Transcript of 1
Osnovne karakteristike:› Sve se predstavlja relacijama (tabelama)› Zasniva se na strogoj matematičkoj teoriji› Minimalna redudansa podataka› Jednostavno ažuriranje podataka› Izbegnute su anomalije ažuriranja› Redosled kolona i redova ne utiče na informacioni
sadržaj tabele› Ne mogu da egzistiraju dva identična reda
(rekorda) u jednoj tabeli› Svaki red se može jednoznačno odrediti (postoji
primarni ključ)
2
Student Knjiga
BrInd Ime SifK Naziv
75/01 Marko 001 Računovodstvo
22/02 Petar 002 Baze podataka
156/03 Milan 003 Osnove finansija
112/02 Dragan 004 Poslovna informatika
005 Marketing
Tabela, sa svojim atributima, je osnovni objekat relacionebaze podataka
3
Suština relacionog modela je da se i klaseobjekata i klase veza između objekatapredstavljaju na jedinstven način, tj. prekotabela.
Nije od značaja gde i kako su smeštenetabele
RBP se sastoji iz više tabela. Tabele supovezane ključevima
Informacija iz RBP se dobija postavljanjemupita
4
Svaka tabela mora da ima:› Ime ili naziv tabele,
› Spisak atributa i› Vrednosti atributa (podaci upisani u polja)
STUDENT
BrInd Ime Prezime Fakultet Smer Adresa
123/03 Marko Marković FPI PP Požeška 2
224/02 Jovan Jovanović FPI GD Danijelova22
III- Ivana Ivanović FPI GD Kumodrašk5/04 a 145
----- ----- ----- ----- ------ -----
5
kolone
Naziv tabele
Atribut 1 Atribut 2 Atribut 3 Atribut 4 Atribut 5
slogovi Podataku polju
..................... Slog ili zapis ili n-torka
6
Imenovana vrsta svojstva (osobina entiteta) Prost atribut (simple) - ne može se rastavljati na
delove bez gubitka svakog značenja - atomskavrednost.
Složen atribut (composite) se sastoji od višeprostih atributa. Može se rastaviti najednostavnije.
Adresa
Ulica Broj Poštanski Gradbroj
8
Pri projektovanju IS, treba pažljivo birati atribute, uskladu sa potrebama
Primer:STUDENT (BrInd, Ime, Prezime, DatRodjenja,
Adresa, Telefon,...)
DatumRodjenja - sa namerom posedovanjapodatka o starosti svakog studenta - dobar izboratributa (informacija se može izračunati)
GodineStarosti – loš izbor atributa – zahtevalo bise svakodnevno ažuriranje BP
9
Skup svih mogućih vrednosti nekog atributa Ainaziva se domenom tog atributa i označava sesa D ili Dom(A )i i
Domen - tip podataka u programiranju Jedan domen za više atributa. Obrnuto ne. Primeri:
› Atribut: Visina (cm)D : skup celih pozitivnih brojeva1
› Atribut: NazivKnjigeD2: skup svih različitih naslova
knjiga› Atribut: Boja D3: {“žut”,”crven”,”zelen”,”plav”}
10
Šema relacije R je konačan skup atributa {Ai} ikonačan skup {O} ograničenja nad vrednostimatih atributa.
Ograničenja: atributi ne mogu uzimati bilo kojevrednosti
Podrazumeva se da kada su zadati atributi,zadati su i njihovi domeni
Bitne osobine šeme relacije:› Nazivi atributa moraju biti različiti - unikatnost
› Redosled atributa nije bitan› Šema relacije mora da sadrži bar jedan atribut
11
Šema relacije se zapisuje:R(D,K)
R - ime relacijeD - skup obelezja
D={A1 A2 A3 },
Ai - atributK - skup ograničenja relacije
Šemom relacije se predstavljaju svojstva klaseobjekata ili veza nekog sistema
Šema relacije može da se tumači i kao definicijastrukture neke datoteke.
12
Primer: Šema relacije koja predstavlja jednu klasu(klasa studenata):
STUDENT ({BrInd,Ime,Prezime,BrPolIspita}, {B1,B2})› B1 - Svaki student ima br indeksa i ne postoje 2 studenta sa
istim brojem indeksa› B2 - Broj položenih ispita je između 1 i 30
13
Relaciji u praksi odgovara jedna datoteka Svakoj n-torki odgovara jedan slog te datoteke Slogovi u datoteci su zapisani u određenom
redosledu, najčešće po redosledu unošenja Primer: STUDENT (BrInd,Ime)
student ( BrInd123/0211/03151/02III-15/04
Ime )J.JankovicP.Petrovic
J.JovanovicM.Markovic
šema relacije
relacija
14
Terminologija - RBP Terminologija - tabele
Relaciona BP Skup tabela
Relacija Pojedinačna tabela
Atribut Naziv kolone u tabeli
Instanca (n-torka) Red podataka u tabeli
Kardinalnost relacije Broj redova u tabeli
Stepen relacije Broj kolona u tabeli
Domen Skup dozvoljenih vrednosti zapodatke u kolonama
15
Vrednost NULL - univerzalnog tipa, primenjivaza atribute bilo kakvih domena
U praksi postoje situacije kada u relacijeunosimo n-torke za koje su vrednosti nekih
atributa nepoznate u tom trenutku. Postoje dvaslučaja:
1. Vrednost postoji, ali nije poznata u trenutku unosa n-torke.
Npr. kod upisa studenata unosimo svepodatke izuzev podataka o telefonu, koji se može inaknadno uneti.
STUDENT (BrInd,Ime,Prezime,Telefon)
Posledica trenutnog nepoznavanja vrednosti nekogatributa, i naknadno se može uneti
16
2. Ta vrednost je nedefinisana, nema smisla.Npr. Ako je zadata šema relacije:
STUDENT (BrInd,Ime,Prezime,Telefon,Smer) Ne može se uneti smer za studente 1. i 2. godine,jer se naknadno opredeljuju za nega.
Navedeni problem je posledica odabrane
strukture šeme relacije
17
Pri projektovanju IS pažljivo birati šeme relacija - da bise izbegao unos prevelikog broja vrednosti NULL(racionalnost)
Primer: Šema relacije Službenik i uvođenje atributamedalja
Službenik (JMBG,Ime,...,Medalja,...)
Za većinu službenika na tom mestu bi ostalo praznomesto sa vrednošþu NULL
•
•
Rešenje problema: kreiranje nove šeme relacijeOdlikovanja (JMBG,Medalja)
Nova relacija bi bila potpuno popunjena, a preko atributa JMBGbila bi “povezana” sa šemom relacije Službenik
18
Ključ K relacije je podskup skupa obeležja(atributa) te relacije koji ima sledeća svojstva:
1. Vrednosti atributa iz K jednoznačno određujupojavu šeme relacije(ne mogu postojati dve n-torkedate relacije sa istim vrednostima atributa iz K) -
jedinstvenost ključa2. Ako izbacimo iz K bilo koji atribut, tada se narušava
svojstvo 1 - minimalnost ključa
19
Relacija može da ima više “kandidata” za ključ Zovemo ih ekvivalentni ključevi i uvek se jedan
od njih bira za primarni ključ
Primer:› Student({BrInd,Ime,Prez,BrPIsp,JMBG}, {BrInd,JMBG})
20
Student(BrInd,Ime) Drzi(SifK,BrInd,Datum) Knjiga(SifK,SifN)
Autor(SifA,Ime) Naslov(SifN, Naziv)
Je_autor(SifA,SifN,Koji)
21
Za strani ključ neophodne su dve relacije
Povezivanje dve tabele
Primer:
STUDENT (BrInd, Ime)
DRŽI (BrInd, SifK, Datum)
Strani ključ relacijeDrži koji pokazujena primarni ključrelacije Student
KNJIGA (SifK, Naziv)
Strani ključ relacijeDrži koji pokazujena primarni ključrelacije Knjiga
22
Student (BrInd,Ime) Knjiga(SifK,SifN)
Naslov(SifN,Naziv,SifO) Oblast(SifO,Naziv) Autor(SifA,Ime)
Pozajmica(SifP,BrInd,Dana) Rezervacija(SifN,BrInd,Datum) Drzi(SifK,BrInd,Datum)
Je_autor(SifA,SifN,Koji)
Jedna šema relacije može da sadrži više stranih ključeva Strani ključ može biti u sastavu primarnog ključa Strani ključ može istovremeno biti i primarni ključ u celini
23
Primer 1: Radnik(SifR,Ime,Adresa,SifNad)
Pretpostavka: svaki radnik ima samo jednognadređenog
Sve se dešava unutar jedne šeme relacije kojasadrži oba učesnika u vezi “strani ključ - primarniključ”
Primer 2:Osoba(JMBG, Ime, Adresa,...)
Brak(JMBG1, JMBG2, Datum_venčanja)
24
Šema relacije predstavlja definiciju relacije. Poanalogiji, šema relacione BP predstavljadefiniciju relacione BP.
Primer: sistem Biblioteka ima sledeću strukturnukomponentu šeme relacione BP (svakoj klasiodgovara jedna šema relacije):
Objekti:
Student(BrInd,Ime)
Knjiga(SifK)
Naslov(SifN,Naziv)
Autor(SifA,Ime)
Veze:
Drzi(SifK,BrInd,Datum)
Sadrzi(SifK,SifN)
Je_autor(SifA,SifN,Koji)
26