1. Kolokvij Flashcards
- Što je baza podataka?
Baza podataka je skup podataka koji su pohranjeni i organizirani tako da mogu zadovoljiti
zahtjeve korisnika. Korisnici ne moraju znati detalje o fizičkoj pohrani i unutarnjoj strukturi
baze podataka.
- Zajedničke osobine za sve sustave baze podataka
Svi sustavi imaju apstraktni model podataka, imaju visoku razinu pristupa, imaju mogućnost
upravljanja transakcijama u višekorisničkom okruženju, imaju kontrolu pristupa i vlasništvo
nad podacima, validaciju podataka i provjeru konzistentnosti te oporavak sustava nakon
ispada sustava ili strojne opreme.
- Nabrojite faze razvoja baze podataka
Prva faza je faza zahtjeva, gdje se na korisnički zahtjev izrađuje model podataka, specificiraju
se podaci i definiraju ograničenja i poslovna pravila.
Druga faza je dizajn, gdje se dizajniraju tablice, relacije, indeksi, ograničenja, pohranjene
procedure i okidači.
Treće faza je implementacija, u tom dijelu se kreiraju tablice, relacije, ograničenja, pišu se
procedure i okidači, puni se baza podataka i testira se.
- Nabrojite tri razine baze podataka
- Konceptualna razina, gdje se predstavlja logički pogled na čitavu bazu podataka.
- Korisnička ili vanjska razina, gdje postoji individualni korisnički pogled na bazu podataka, razvija se sukladno potrebama korisnika, može se razlikovati od sheme baze podataka.
- Fizička ili unutarnja razina, gdje se implementira baza podataka na konkretnom hardveru, fizička
pohrana podataka na mediju.
- Nabrojite osnovne tipove funkcija SUBP-a
- Definiranje baze podataka (stvaranje objekata u bazi) - create, view, index,
funcktion - Manipuliranje podacima u bazi - insert, update, delete, select
- Upravljačke funkcije - sigurnost i zaštita od neovlaštenog pristupa, očuvanje
integriteta, statičko praćenje rada baze, optimizacija rada - constraint, grant, revoke
- Nabrojite modele baze podataka
- Hijerarhijski (oblik stabla)
- Mrežni (isto kao i hijerarhijski, dijete može imat više roditelja)
- Relacijski
- Relacijski s objektno orijentiranim proširenjima
- Objekno orijentirane baze podataka
- Navedite osnovne postupke apstrakcije
Klasifikacija (opis i grupiranje entiteta u razrede),
generalizacija (entiteti niže razine povezujuse s entitetima više razine), agregacija (formiranje novog pojma višeg stupnja)
- Što su to entitet, veza i atribut?
Entitet je stvar, objekt, za koji je potrebno poznavati i čuvati određene informacije.
Atribut je svaki detalj koji služi da pobliže odredi, identificira, klasificira entitet.
Veza je povezivanje dvaju ili više entiteta u novi entitet koji može imati svoje veze.
- Što čini relaciju?
Relaciju čine 2 entiteta koja se povezuju jedan s drugim u novu relaciju.
- Što su to ključevi relacije i navedite ih?
Ključevi relacije su atributi pomoću kojih možemo jednoznačno označiti određeni entitet.
Postoje super ključ (atribut koji jedinstveno određuje n-torku unutar relacije), kandidat ključ
(super ključ takav da nema nijedan odgovarajući podskup koji bi bio super ključ unutar
relacije), primarni ključ (kandidat ključ koji je odabran da jedinstveno odredi n-torku unutar
relacije) i vanjski ključ (atribut ili skup atributa unutar jedne relacije koji odgovara kandidat
ključu neke (moguće i iste) relacije.)
- Navedite i objasnite operacije u relacijskom modelu.
Tradicionalne operacije koje se izvode na dvije relacije:
Unija (relacija koju čine sve n-torke prve i druge relacije), presjek (relacije koju čine n-torke zajedničke za obje relacije),
razlika (relacija koju čine sve n-torke koje se nalaze u prvoj a ne
nalaze u drugoj relaciji) i kartezijev proizvod (relacija koju čine sve moguće kombinacije parova n-torki s tim da je prva n-torka iz prve, a druga iz druge relacije)
Izvedeni operatori:
Selekcija (rezultat su samo one n-torke koje zadovoljavaju postavljene uvjete), projekcija(rezultat je izbor određenih atributa polazne relacije), spajanje(iz dvije relacije stvara novu relaciju od svih kombinacija parova n-torki koji zadovoljavaju postavljene uvjete) i dijeljenje (kreira novu relaciju na temelju jedne binarne i jedne unarne relacije)
- Što je modeliranje podataka i nacrtati faze modeliranja od stvarnog svijeta do baze
podataka?
Modeliranje podataka je tehnika organiziranja i dokumentiranja podataka sustava.
/SLIKA
- Pojasniti preslikavanje iz E-R modela u relacijski model.
Veza JEDAN:VIŠE – primarni ključ entiteta sa strane veze JEDAN doda se kao strani ključ u
entitet sa strane veze VIŠE.
Veza VIŠE:VIŠE – doda se novi entitet koji sadrži primarne ključeve obaju rubnih elemenata.
Ti atributi zajedno tvore složeni primarni ključ novonastalog entiteta.
Usporedne veze – dvije usporedne veze između dva entiteta. Svaku vezu zamijenimo s po
jednim stranim ključem u relaciji na strani veze VIŠE (usporedne veze se preslikaju u jednu,
ali s uvođenjem dodatnog stranog ključa). Da bi razlikovali veze među entitetima, stranim
ključevima damo različite nazive.
Povrate veze – veza entiteta na „samog sebe“. Doda se strani ključ jednak primarnom ključu
relacije. Za povratne veze vrijedi da je strani ključ jednak primarnom ključu relacije, ali pod
drugim imenom.
/SLIKA
- Što su funkcijske ovisnosti?
U tablici R s atributima X i Y koji mogu biti kompozitni, tj. složeni, Y je potpuno funkcijski
ovisan o X ako vrijedi da je Y funkcijski ovisan o X i nije funkcijski ovisan ni o jednom
manjem podskupu atributa X. Odnosno, ako vrijedi X->Y, tada ne smije postojati nijedan
podskup Z koji sadrži samo dio atributa od kojih se sastoji atribut X, za koji bi vrijedilo da je
Z->Y.
- Što su normalne forme i objasniti ih.
Normalne forme su smjernice kako pravilno oblikovati bazu podataka i ima ih ukupno 5.
Prva normalna forma kaže da se tablica nalazi u 1. normalnoj formi ako su svi neključni
atributi funkcijski ovisni o ključu.
Tablica je u 2. normalnoj formi ako i samo ako je u 1. normalnoj formi i ako su svi neključni
atributi potpuno funkcijski ovisni o ključu.
Tablica je u 3. normalnoj formi ako i samo ako je u 2. normalnoj formi i ako niti jedan
neključni atribut nije tranzitivno ovisan o ključu.
Tablica je u 4. normalnoj formi ako i samo ako vrijedi da postojanje višeznačne ovisnosti A-
»B povlači za sobom postojanje funkcijske ovisnosti svih atributa tablice o atributu A.
Tablica je u 5. normalnoj formi u odnosu na spojnu ovisnost *(X, Y, …, Z) ako i samo ako je
u spojnoj ovisnosti svaki od atributa X, Y, …, Z kandidat za ključ tablice. Spojna ovisnost:
tablica R ispunjava uvjet spojne ovisnosti ako i samo ako vrijedi da je relaciju R moguće
dobiti prirodnim spajanjem projekcija X, Y, …, Z.
- U čemu je sličnost, a u čemu razlika između primarnog i jedinstvenog ključa?
Primarni ključ – može biti samo jedan u tablici, ne dozvoljava NULL vrijednosti (Unique i
NOT NULL)
Jedinstveni ključ – može ih biti više u tablici, može imati NULL vrijednosti
- Što se podrazumijeva pod Kartezijevim proizvodom? Navedite primjer.
Kartezijev proizvod je spajanje 2 ili više tablica bez uvjeta spajanja.
/SLIKA
- Koji uvjeti moraju biti ispunjeni da bi se nad relacijskim tablicama mogli izvršiti operatori
unije, presjeka i razlike?
Relacije moraju biti unijski kompatibilne – moraju imati isti stupanj i moraju biti definirane
nad istim domenama (isti broj i tip atributa).
- O kojoj je funkcijskoj ovisnosti riječ kod treće normalne forme?
Riječ je o determinantu, a to je atribut o kojem je neki atribut potpuno funkcijski ovisan.
- U čemu je razlika između DDL i DML naredbi SQL-a?
DDL izrazima se definiraju podaci (CREATE, ALTER, DROP, RENAME, GRANT,
REVOKE, …), a DML izrazima se upravlja podacima(INSERT, UPDATE, SELECT,
DELETE, …).
- Koji se postupci apstrakcije koriste u E-R modeliranju za formiranje entiteta, a koji za
formiranje veza?
Za formiranje entiteta koristi se klasifikacija, a za formiranje veza koristi se agregacija.
- U čemu je razlika između operatora selekcije i projekcije? Navedite primjer.
Operatorom projekcije se odabiru stupci iz tablica nad kojima će se vršiti operacije, a
operatorom selekcije se filtriraju podaci iz odabranih stupaca.
/SLIKA
- Koje uvjete mora zadovoljiti kandidat za primarni ključ?
Kandidat mora biti jedinstven i NOT NULL u svim svojim domenama da bi mogao postati
primarni ključ.