Baze podataka

Embed Size (px)

Citation preview

Panevropski univerzitet APEIRON Banja Luka Fakultet informacionih tehnologija

Prof. dr Lazo Roljid KOMPENDIJUMza pripremanje ispita iz BAZE PODATAKA

Banja Luka, juni 2011.

Panevropski univerzitet APEIRON Banja Luka Fakultet informacionih tehnologija Prof. dr Lazo Roljid KOMPENDIJUM za pripremanje ispita iz BAZE PODATAKA1. ta je baza podataka? Def.1: Baza podataka je organizovani skup logiki povezanih podataka (slogova) i datoteka, bez suvinosti ili redundancije, koji se odnosi na sline pojmove ili predmete, organizovanih za odreenu namjenu. Redundantnim podacima se smatraju oni podaci koji su nepotrebno smjeteni na vie mjesta u bazi podataka. Def.2: Jedna od mogudih definicija baze podataka glasi da je to zbirka slogova podataka sauvanih u raunaru na sistemski nain, takav da joj se raunarski program moe obratiti prilikom odgovaranja na problem. 2. ta je sistem za upravljanje bazom podataka? Sistem za upravljanje bazom podataka (DBMS - Data Base Management System) vodi rauna o podacima, vezama meu podacima, ispravnosti podataka i svemu ostalom u radu sa bazom podataka. 3. ta je MS Access? Microsoft Access je sistem, odnosno program za upravljanje bazama podataka za rad pod operativnim sistemom Windows. 4. Koje su funkcionalne mogudnosti Accessa? Glavne funkcionalne mogudnosti Access-a su: - Unos podataka direktno u bazu podataka ili uvoz podataka iz drugih programa. - Sortiranje, indeksiranje i organizacija podataka na nain koji se eli. - Brzo stvaranje izvjetaja ili priprema za ispis naljepnica za pisma upotrebom svih ili samo dijela podataka. - Kreiranje formi (ili obrazaca) kako bi manje struni korisnici mogli unositi nove podatke u bazu podataka. - Stvaranje upita koji de rezultirati izvjetajem zavisno od uslova koji su postavljeni. 5. Koji su gradivni elementi aplikacije Accessa, odnosno iz ega se sastoji baza podataka kreirana u Access-u? Sastoji se od slijededih elemenata, odnosno objekata: - tabele, - forme (obrasci), - upiti, izvjetaji, - makroi i - VBA moduli.

6. a) Koji od naprijed navedenih objekata je prikazan na slici, dole, i b) emu on u ovom primjeru slui (opisati sa slike sve opcije koje nudi)?

7. a) ta je prikazano na slici dole? b) emu to slui opdenito? c) a emu slui ovaj konkretno, odnosno ta demo saznati iz njega?

8. a) ta prikazuje gornji dio slike-dole?, b) a ta prikazuje donji dio slike (dole)? c) i emu to slui opdenito?, d) a ta saznajemo (ta je prikazano) iz ovog konkretno u aplikaciji robnog prometa?

9. a) ta je to to je prikazano na slici dole? b) emu to slui opdenito? i c) ta omoguduje ovaj konkretno?

10. ta je strani klju? Strani klju sainjavaju jedno ili vie kolona (polja) ije vrijednosti moraju postojati unutar vrijednosti primarnog kljua neke druge (ciljne) table. 11. ta je to NULL ili nulta vrijednost u relacionim bazama podataka? Jedna od osnovnih razlika izmeu relacione baze podataka i starijih baza podataka jeste pojam nulte vrijednosti koji je prisutan u relacionim bazama podataka. Ova specijalna vrijednost u relacionim

bazama podataka ukazuje na odsustvo bilo kakve vrijednost u polju znakovnog tipa (Char) ili brojanog (Numbers) tipa. Nulta vrijednost pokazuje da vrijednost kolone (polja) ili formule koja ili nije primjenljiva u datom sluaju ili da jo nije dodijeljena. Termin "nula vrijednost" (koji demo na slici dole obiljeiti sa ?) se koristi da oznai "nedostatak imformacija u bazi, odnosno "jo nepoznatu vrijednost" za neki atribut u nekim slogovima tabela u relacionoj bazi podataka.

12. Na ta se odnosi (ta znai?) pojam normalizacija u relacionim bazama podataka? Teorija normalizovanja omoguduje nam da opiemo eljenu strukturu tabela i kolona unutar baze podataka u skladu sa pravilima normalizacije. Normalizacija se svodi na izuavanje relacija izmeu tabela, atributa (kolona) i meusobne zavisnosti atributa u cilju : - minimiziranja redundantnosti podataka - izbjegavanje anomalija pri auriranju podataka - smanjenju broja neloginih podataka - izradi strukture podataka pogodne za odravanje. Normalizacija je tehnika dizajna baze podataka kojom se na osnovu izvjesnih kriterijuma odreuje sadraj tabela (tj. koje kolone treba da obuhvataju tabele i njihova struktura kljua). Osnovna ideja je da se eliminie nepotrebno dupliranje nekljunih podataka u tabelama. 13. Potreba za normalizacijom Normalizacija je u prvom redu potrebna zato jer se njome izbjegavaju tekode koje bi nastupile ako bi radili s nenormalizovanim podacima. Normalizacija je korisna i zato jer se njome naknadno otkrivaju i ispravljaju greke u oblikovanju entiteta, veza i atributa. Od normalizacije moemo odustati samo u nekim rijetkim situacijama, ali i tada moramo biti svjesni eventualnih loih posljedica takve odluke. 14. Kako glasi prvo pravilo normalizacije Prva normalna forma (1NF)? Def1: Entitet zadovoljava prvo pravilo normalizacije ukoliko su svi atributi koje posjeduje elementarni. Atribut je elementaran ukoliko sadri jedinstvenu informaciju o entitetu. Primjera radi navedimo da u tabeli koja je namijenjena pohranjivanju informacija o zaposlenima nedete koristiti atribut Izdrzavane_osobe u koji biste unosili ime osoba koje zaposleni izdrava. S obzirom da jedan zaposleni moe imati vie osoba koje izdrava (ili nijednu) ova informacija nije elementarna. Def.2: Prva normalna forma odnosi se na grupisanje slinih podataka u odvojene tabele i definisanje primarnog kljua za svaku tabelu.

15. Kako glasi drugo pravilo normalizacije Druga normalna forma (2NF)? Def.1 Ovo pravilo podrazumijeva da tabela zadovoljava prvo pravilo normalizacije i tie se samo tabela sa sloenim (komponovanim) primarnim kljuem (komponovanim od vie atributa). Moemo zakljuiti da se drugo pravilo normalizacije svodi na normalizaciju relacija koritenih u dijagramima Entitet-Relacija. Drugo pravilo normalizacije zahtijeva da svi atributi (kolone), koji ne ulaze u sastav

primarnog kljua, zavise iskljuivo i u cjelosti od primarnog kljua entiteta. Drugim rijeima ovo pravilo zahtijeva da tabela ne sadri redundantne (nepotrebne, suvine) informacije. Uzmimo za primjer tablu Porudjba_Artikl koja identifikuje artikle jedne porubine i iji je primarni klju komponovan od Id_Porudjbina i Id_Artikl. Tabela koja pored atributa Kolicina sadrava i atribut Naziv_artikla ne zadovoljava drugo pravilo normalizacije bududi da atribut Naziv_artikla zavisi samo od dijela primarnog kljua - Id_Artikla. Def.2: Smjetanje podataka u drugu normalnu formu sastoji se od premjetanja u druge tabele onih podataka koji su zavisni samo od dijela kljua.

Svoenje na drugu normalnu formu zahtijevalo bi da ovu tabelu nadomjestimo tabelama Stavke_porudjbine i Artikl, koje bi obje zadovoljavale drugo pravilo normalizacije.

Drugo pravilo normalizacije baza podataka kae da, ako polje samo djelimino zavisi od vievrijednosnog kljua, premjestite ga u drugu (posebnu) tabelu. Dakle, nemojte smjetati iste podatke na dvije razliite lokacije (tabele). Ovo moe voditi u greke auriranja ili brisanja. Ako su ekvivalentni elementi podataka uneseni u dva polja, uklonite drugi element podataka, kreirajte novu tabelu sa odnosnim elementom i pratedim kljunim poljem, a zatim smjestite kljuno polje kao relaciju prema lokaciji koja je sadrala oba objekta. Drugim rijeima, ako imate potrebu da premjestite dva polja da biste stvarno identifikovali slog, ali samo jedno od polja iz te tabele, koje je neophodno za izvravanje pregleda tabele, potrebna vam je nova tabela. Za baze podataka koje zadovoljavaju ovo pravilo se kae da su u drugoj normalnoj formi.

16. Kako glasi trede pravilo normalizacije (Treda normalna forma 3NF)? Def.1: Ovo pravilo normalizacije podrazumijeva da se tabela ved nalazi u drugoj normalnoj formi. Cilj primjene tredeg normalnog pravila jeste da se izbjegnu tranzitivne (posredne) zavisnosti u okviru jedne tabele. Pri privoenju tabele u tredu normalnu formu slijedite navedene etape : - Zadrite u tabeli samo atribute zavisne direktno od primarnog kljua u njegovoj cjelosti. - Grupiite u jednu tabelu sve atribute koji su tranzitivno zavisni, atribut od kojeg su zavisni navedeni atributi duplicirajte u poetnoj tabeli i odaberite ga za primarni klju nove tabele. Kao primjer navodimo tabelu Porudjbina u kojoj atribut Ime_Kupca zavisi tranzitivno od primarnog kljua (posredstvom atributa Id_Kupca koji zavisi direktno od primarnog kljua).

Primjena tredeg pravila normalizacije navodi nas da nadomjestimo tabelu Porudjbina sa dvije slijedede tabele.

Def.2: Treda normalna forma sastoji se od uklanjanja svih podataka u tabelama koji ne zavise jedino od primarnog kljua. Drugim rijeima, treba zadrati samo podatke koji su zavisni od primarnog kljua, a one koji nisu treba premjestiti u nove tabele i formirati primarni klju za njih. U svakoj formi normalizacije postoji izvjesno ponavljanje, pa ukoliko su podaci u 3NF (skradenica za 3. normalna forma), oni su ved u 1NF i 2NF. Sa aspekta dizajna baze podataka to znai da podatke treba organizovati tako da sve kolone koje ne pripadaju primarnom kljuu zavise samo od itavog primarnog kljua.

17. a) ta je ema baze podataka? b) Kojim sve oblicima moemo prikazati emu BP? a) ema baze podataka je skup objekata koji opisuju (otjelotvoruju, ine) logiki model baze podataka : tabele, kolone, primarni kljuevi, strani kljuevi itd. b) Tekstualno-opisano, ili izgovoreno rijeima, u obliku formula, tabelarno, grafiki, u obliku E-R dijagrama, itd.

Def.2: ema1 baze podataka je grafiki opis nacrta tabela u vidu linija koje sadre nazive njihovih polja i prikazuju uprodenu verziju odnosa izmeu njih. Dijagram koji prikazuje logiko predstavljanje podatak nazivamo emom. Ona moe pomodi da se shvati koncept baze podataka. Def.3: ema je opis logike organizacije baze podataka. Ona je ctre na kome su predstavljeni tipovi podataka koji se nalaze u bazi podataka. Na emi se nalaze imena objekata i atributa i specifikuju se relacije (veze) izmeu podataka. Moe se smatrati da tabela predstavlja emu, ako se iz nje uklone konkretne vrijednosti podataka. Kada se u emu ubace podaci (kao to je to uinjeno na slici 5) tada se govori o jednom primjeru eme.

18. ta je primarni klju? Svaka entitet posjeduje skup atributa koji omoguduje da jednoznano identifikujemo konkretnan entitet. Taj skup atributa nazivamo primarni klju. Primarni klju moe da sainjava jedan atribut Klijent_ID u sluaju entiteta Klijent, ili vie atributa - u sluaju entiteta Stavke_porudjbine svaka stavka je identificirana atributima Klijent_ID i Artikl_ID. Izbor pojedinih primarnih kljueva je oit, to meutim nije uvijek sluaj.1

Potie od grke rijei schema=plan.

Definicija1: Primarni klju je (jedan ili) skup atributa koji jednoznano identifikuje slog tabele. Definicija 2: Primarni klju je kolona ili skup kolona koji jednoznano odreuju ostatak podataka u svakom redu tabele. 19. Opiite rijeima ta nareuje slijededa komanda: SQL>CREATE TABLE ODELJENJE (IdOdjeljenje NUMBER(5) NOT NULL PRIMARY KEY, Naziv VARCHAR(25) NOT NULL);

20. Koji podaci iz tabele TabelaAdresaRadnika (dole) nastanu u privremenoj tabeli (popunite je podacima)TabelaAdresaRadnika JMBG Ime Prezime Petrovid Simid Adresa Kralja Petra 9 Grad Beograd Republika Srbija Srbija

512687458 ore 758420012 Marija 102254896 Savo

Bul Nikole Tesle 22 Jagodina

Jovanovid Njegoeva 17

Podgorica Crna Gora Srbija

876512563 Svetlana Adimovid Laze Lazarevida 10 Subotica

nakon slijedede SQL komande:SELECT Ime, Prezime, Adresa, Grad, Republika FROM TabelaAdresaRadnika; Rezultat gornje komande je:

Ime ore Marija Savo

Prezime Petrovid Simid

Adresa Kralja Petra 9

Grad Beograd

Republika Srbija

Bul Nikole Tesle 22 Jagodina Srbija Podgorica Crna Gora

Jovanovid Njegoeva 17

Svetlana Adimovid Laze Lazarevida 10 Subotica Srbija

21. ta je strani klju? Strani klju je kolona u tabeli koja je primarni klju u drugoj tabeli, to znai da sve vrijednosti u koloni stranog kljua moraju imati odgovarajude podatke u drugoj tabeli u kojoj je ta kolona primarni klju.

22. ta su odnosi, odnosno relacije (engl. Relationships) u relacionoj bazi podataka?

Terminom odnos (ili relacija) obino se ukazuje na meusobne odnose izmeu primarnih i stranih kljueva tabela. Ovaj koncept je vaan jer se njime odreuje koje kolone jesu ili nisu primarni ili strani kljuevi tabela relacione baze podataka.

23. ta znai odnosjedan-prema-jedan? Odnos jedan-prema-jedan znai da postoje kolone primarnog i stranog kljua i da za svaku vrijednost primarnog kljua postoji jedna vrijednost stranog kljua. Veza 1:1 je najprostiji oblik veze, a za primjer se moe uzeti veza RUKOVODI izmeu entiteta RUKOVODILAC i SEKTOR, gdje se vidi da jedan rukovodilac moe rukovoditi samo jednim sektorom, ali i obratno - jedan sektor ima samo jednog rukovodioca.

RUKOVODILAC RUKOVODI SEKTOR

24. ta znai odnos jedan-prema-vie? Odnos jedan-prema-vie (1-M). To znai da za svaku vrijednost neke kolone jedne tabele postoje jedna ili vie odgovarajudih vrijednosti u drugoj tabeli. Veza 1:n (n:1) je najedi tip veze, a da li je veza 1:n ili n:1 zavisi od toga u kom smjeru je posmatramo. Za primjer ovog tipa veze moe se uzeti veza SEKTOR ZAPOLJAVA RADNIKA, gdje su entiteti SEKTOR i RADNIK u vezi 1:n, jer u jednom sektoru moe biti zaposleno vie radnika.

VEZA1:N VEZA ISM

25. ta znai odnos vie-prema-vie? Odnos vie-prema-vie (M-M) u optem sluaju ne ukljuuje kljueve ved identifikacione kolone. Ovaj odnos ukazuje da postoji meusobni odnos dvije kolone u razliitim tabelama, i da za svaku vrijednost u jednoj koloni postoje jedna ili vie vrijednosti odgovarajude kolone druge tabele ili, ede, da su dvije tabele u odnosu 1-M jedna prema drugoj (dva odnosa, po jedan odnos 1-M jedne tabele prema drugoj).

26. Koja je osnovna razlika izmeu klasine obrade podataka podranih datotekama (engl. files) i bazama podataka (eng. data bases) Osnovna razlika izmeu klasine obrade podataka podranih datotekama (engl. files) i bazama podataka (eng. data bases) je u tome gdje se lociraju podaci, a gdje kontekst podataka. U klasinoj obradi podataka (AOP) podaci se uvaju odvojeno od konteksta i fiziki se nalaze u datotekama, dok se kontekst i nain predstavljanja podataka nalaze u programu. Kod obrade podataka podrane bazama podataka i kontekst i podaci se fiziki nalaze u datoteci tipa baze podataka. Kod MS Accessa nije tako, nego su i tabele koje ine relacionu bazu i ostali objekti koji ine aplikaciju, smjeteni u jedan fajl, tipa .mdb u verzijama do 2003. a tipa .xxxx u verzijama MS Access 2007 i kasnijim.

27. Objasniti ta su modeli podataka. Def.1: Specifine teorije pomodu kojih se specificira i projektuje neka konkretna baza podataka ili informacioni sistem Def.2: Intelektualni alati pomodu kojih se opisuje (modeluje) sistem kao skup objekata, njihovih atributa i njihovih meusobnih veza

28. Objasniti koja je namjena sistema za upravljanje bazom podataka. Sistem za upravljanje bazom podataka (DBMS) je softverski paket (sistem) projektovan za jednostavno i efikasno memorisanje i upravljanje bazama podataka koji treba da omogudi skladitenje podataka, pouzdanost podataka, paralelno koridenje, logiku i fiziku nezavisnost programa od podataka i jednostavno komuniciranje sa bazom podataka.

29. Model podataka se moe dekomponovati u 3 komponente. Navesti ih i objasniti. -Gornji ili eksterni nivo definie kako pojedini korisnici vide podatke. -Srednji ili konceptualni nivo definie uopten model baze podataka kako je koriste svi korisnici. -Najnii ili interni nivo predstavlja fiziku definiciju podataka.

30. ta je SQL upit? SQL (Structured Query Language) je najpoznatiji relacioni jezik upita koji slui za realizaciju upita nad relacijama u relacionim bazama podataka. 31. a) ta je konceptualna ema baze? b) U kojim fazama ivotnog ciklusa se kreira konceptualna ema? Konceptualna ema je logiki opis baze podataka. Ona predstavlja apstraktan model baze podataka i kreira se u fazi planiranja i sistemske analize. 32. Koje su osnovne prednosti baze podataka? -Integrisanost podataka (centralizovana kontrola svih podataka i upravljanje podacima na sistematian nain),

-Nezavisnost podataka od programa koji ih obrauju, -Razdvajanje fizikog zapisa i logike organizacije podataka.

33. Kako se ostvaruje pouzdanost podataka kod baze podataka? Pouzdanost podataka se ostvaruje ouvanjem integriteta podataka i kontrolom pristupa podacima. Integritet baze podataka je tanost ili korektnost podataka, a podacima mogu pristupati samo autorizovani korisnici. 34. Integritet baze? Integritet baze podataka je tanost ili korektnost podataka. 35. Koje su osnovne funkcije administratora baze podataka? -Reorganizuje logiku i fiziku strukturu u cilju povedanja efikasnosti sistema. -Definie postupke obnove otedenih podataka i vri oporavak baze nakon otedenja. -Osigurava zahtjevani nivo integriteta, pouzdanosti i privatnosti podataka. -Odravanje sistema obiljeavanja, uvoenje standarda i unifikaciju koridenja baze podataka. planiranje, projektovanje i koridenje resursa informacionog sistema. 36. Koje su osnovne vrste modela baze podataka? 1. Hijerarhijski, 2. Mreni 3. Model objekti-veze 4. Relacioni, 37. ta je karakteristika hijerarhijskog modela BP? Hijerarhijski model zasniva se na ideji povezivanja podataka u hijerarhijske strukture pri emu starijem zapisu odgovara vie zapisa nieg nivoa, ali zapisu nieg nivoa odgovara samo jedan zapis vieg nivoa. Na vrhu hijerarhije nalazi se korijeni zapis iz kojeg se kasnije kroz hijerarhijske vorove razvijaju ostali zapisi i na taj nain pokuava obuhvatiti stanje sistema. 38. ta je karakteristika mrenog modela BP? Mreni model se zasniva na ideji mrene strukture. Osnovni koncepti ovog modela su polja, slogovi i setovi, pri emu polja odgovaraju atributima, a slogovi entitetima. Za predstavljanje veza izmeu objekata realnog sistema koristi se set. Set predstavlja vezu izmeu vlasnika seta (jedan zapis) i jednog ili vie setova. Ovaj model prate proceduralni jezici pri emu nisu odvojeni logiki i fiziki koncept baze podataka. 39. Koja je namjena modela OBJEKTI-VEZE? Model objekti-veze je najpopularniji i u praksi projektovanja BP najvie korideni konvencionalni model podatka. Postoji vie razliitih verzija ovog modela. 5. Objektno-relacioni, 6. Objektni 7. Aktivne baze podataka

Model objekti-veze je semantiki bogat model prvenstveno namijenjen za specifikovanje statike strukture baze podataka i osnovnih (strukturnih) dinamikih ogranienja. Prvenstveno se koristi za projektovanje baza podataka. Model objekti-veze se dalje transformie direktno u opis baze podataka u nekom sistemu za upravljanje bazama podataka. Prikazademo dva primjera MOV (modela objekti-veze) po notaciji standarda IDEF1X, na kome se bazira CASE alat ERwin, veoma esto korideni alat za modeliranje podataka preko modela objekti veze.

40. ta je karakteristika relacionog modela BP? Relacioni model je danas najpopularniji i najvie primjenjivan model podataka. Vedina poznatih SUBP zasnovani su na relacionom modelu podataka (ORACLE, INFORMIX, MS ACCESS,). Kao glavne prednosti ovog modela navode se jednostavnost strukture, to omogudava primjenu matematikih formalizama u postupku projektovanja na konceptualnom nivou kao i lak interaktivni pristup uz pomod nekih od poznatih upitnih jezika (kao to je SQL). Dvije karakteristike ine relacioni model jo uvijek najpopularnijim i najire primjenjivanim: - Struktura modela je veoma jednostavna, prihvatljiva svakom korisniku, jer relaciona baza podataka predstavlja skup tabela. I same operacije, koje iz skupa datih tabela generiu novu, su jednostavne i lako prihvatljive. - Moguda je formalno-matematika interpretacija tabela. Odreene vrste tabela se mogu tretirati kao matematike relacije i zatim iskoristiti bogata teorijska osnova odgovarajudeg matematikog aparata. 41. ta su aktivne baze podataka? Aktivne baze podataka proiruju relacioni model sa skupom koncepata za ugraivanje dinamike sistema u bazu podataka. U njima se koriste trigeri. Triger predstavlja pravilo dogaaj uslov akcija (kada nastupi dati dogaaj u sistemu i ako je ispunjen dati uslov, obavlja se navedena akcija). Mogu se zadati veoma kompleksni trigeri. 42. ta je selekcija i projekcija kod relacoionih baza podataka? -Selekcija unarna operacija izdvajaju se slogovi (n-torke) koji zadovoljavaju dati uslov. -Projekcija unarna operacija biraju se polja (kolone) zadate tabele (relacije) iji se nazivi navode u oznaci operacije i upisuju u novu tabelu (relaciju).

43. Da li primarni kju moe biti nepoznat? Da li strani klju moe imati null vrijednosti? -Primarni klju ne moe biti nepoznat. -Strani klju moe imati null vrijednost.

44. ta rjeava normalizacija baze podataka? Normalizacija baza podataka rjeava: -Probleme redundantnosti i integriteta, -Mogude neusklaenosti u iskazima,

-Smanjuje kompleksnost obrade, -Pojednostavljuje odravanje, -Smanjuje veliinu potrebnog memorijskog prostora.

45. ta je funkciona zavisnost kod baze podataka? -Kada je svakoj vrijednosti (atributa) a mogude pridruiti samo jednu vrijednost (atributa) b, kaemo da je a zavisno od b. 46. Objasniti ta je potpuna funkcionalna zavisnost baze podataka? Atribut je potpuno zavisan od kljua ako je funkcionalno zavisan od cijelog kljua. Potpuna funkcionalna zavisnost se definie kada je klju sastavljen od vie atributa. 47. Navesti PRVU normalnu formu kod relacionih baza podataka. -Relacija je u prvoj normalnoj formi ako su svi atributi nedjeljivi i funkcionalno nezavisni od kljua. 48. Navesti DRUGU normalnu formu kod relacionih baza podataka. Relacija je u drugoj normalnoj formi: - ako je u prvoj normalnoj formi i - ako svi njeni atributi (koji nisu kljuevi) potpuno funkcionalno zavise od kljua. 49. Navesti TREU normalnu formu kod relacionih baza podataka. Relacija je u tredoj normalnoj formi: - ako je u drugoj normalnoj formi i - ako su svi njeni atributi (koji nisu kljuevi) funkcionalno nezavisni. 50. ta obdezbjeuje efikasan DBMS? Efikasan sistem za upravljanje bazom podataka obezbjeuje tri osnovne funkcije, a to su : -definisanje podataka; -rukovanje podacima - odnosi se na odabiranje podataka koji se ele upotrebiti; -nadzor nad podacima - u osnovi se odreuje kome de biti dozvoljen pristup podacima, kao i kome de biti dozvoljeno da aurira postojede i dodaje nove podatke; 51. ta je to ivotni vijek BP? Svaka baza podataka ima svoj ivotni vijek, poetak kada je projektovana, pa do njene implementacije i odravanja. U grubo se to moe podjeliti na 5 faza. . Analiza potreba . Modeliranje podataka . Implementacija . Testiranje . Odravanje. 52. Modeli podataka Podaci u bazi logiki su organizovani u skladu s nekim modelom podataka. Model podataka je skup pravila koja odreuju kako moe izgledati logika struktura baze. Model ini osnovu za koncipiranje,

projektovanje i implementiranje baze. Dosadanji DBMS-i obino su podravali neki od slijededih modela: Relacioni model - Zasnovan na matematikom pojmu relacije. I podaci i veze meu podacima prikazuju se pravougaonim tabelama. Mreni model - Baza je predstavljena usmjerenim grafom. vorovi su tipovi sloga, a lukovi definiu veze meu tipovima sloga. Hijerarhijski model je specijalni sluaj mrenog modela. Baza je predstavljena jednim stablom ili skupom stabala. vorovi su tipovi sloga, a hijerarhijski odnos nadreeni-podreeni izraava veze meu tipovima sloga. Objektni model inspirisan je objektno-orijentisanim programskim jezicima. Baza je skup trajno sauvanih objekata koji se sastoje od svojih internih podataka i metoda (operacija) za rukovanje s tim podacima. Svaki objekt pripada nekoj klasi. Izmeu klasa se uspostavljaju veze nasljeivanja, agregacije, odnosno meusobnog koritenja operacija. 53. ta je entitet ? Def.1: Entitet je bilo ta (stvar, predmet, osoba, organizacija, itd.) o emu ima smisla prikupljati podatke, uvati ih, analizirati i obraivati. Def.2: Entitet je dio realnog svijeta opisan ogranienim brojem atributa. Def.3: Entitet je svaki objekat koji se moe razlikovati od svih ostalih objekata u nekom univerzumu, to znai da se moe jednoznano identifikovati. Npr. odreena osoba, dogaaj, firma itd. su razliiti entiteti. Entitet moe biti neto konkretno kao to je odreena osoba ili odreena knjiga, ili neto apstraktno kao istorijska kategorija, drutveno ureenje, dio neke misaone klasifikacije. Jedino to takav objekat treba da zadovolji da bi bio entitet jeste da se moe jednostavno identifikovati u odreenom svijetu koji se modelira. 54. ta je skup entiteta? Grupa entiteta istog tipa naziva se skup entiteta. Npr. skup studenata univerziteta predstavlja skup entiteta. Ovi skupovi entiteta imaju pridruena neka svojstva ili atribute putem kojih se moe testirati da li neki entitet pripada datom skupu entiteta. Meutim, skupovi entiteta ne moraju biti potpuno razdvojeni u smislu njihovih svojstava. Npr. ako imamo 2 skupa entiteta zaposleni i ovjek onda sve osobine (atributi) skupa entiteta ovjek su atributi iz skupa entiteta zaposleni. 55. Atributi Atributi su svojstva entiteta i njihovih skupova. Svaki skup entiteta je u potpunosti odreen skupovima atributa kojima pripadaju. Npr. skup entiteta zaposleni moe da ima atribute: IME, PREZIME, JMBG, BRLK, STA. Za svaki atribut postoji skup dozvoljenih vrijednosti koji se naziva domenom atributa. 56. ta konstituie loe projektovanu bazu podataka? Ovo demo razmotriti na primjeru : isporuilac (IME_I,ADRESA,ID_ARTIKLA,CIJENA ) U ovakvoj bazi podataka moemo uoiti nekoliko anomalija: 1. dupliciranje informacija , za svaki artikl koji neki isporuilac dostavlja moramo upisati adresu tog isporuioca 2. potencijalna nekonzistentnost baze ( anomalija auriranja ) Ove anomalije dolaze kao posljedica dupliciranja informacija. Naime, prilikom promjene adrese nekog isporuioca moe se desiti da se ta promjena unese u jednu n-torku (jedan slog) za tog isporuioca, a da pri tom u ostalim slogovima za tog isporuioca adresa ostane ista. Time se dobija nekonzistentnost baze (baza ne odraava realno stanje)

3. anomalija unoenja, ne moemo predstaviti informaciju o imenu i adresi isporuioca ukoliko ne alje nijedan artikl. Mogli bi vjetaki stvoriti n-torku sa definisanim vrijednostima za IME_I, ADRESA i nedefinisanim vrijednostima ID_ARTIKLA,CIJENA i takav slog unijeti u tabelu isporuilac. Meutim postojanje nedefinisanih vrijednosti se ne dozvoljava za kljune atribute, a ID_ARTIKLA jeste kljuni atribut (polje) ove tabele. Ovo stoga to semantika algebarskih relacionih operatora kao to je spajanje nije definisana za neke vrijednosti. Dalje, ukoliko bi isti takav isporuilac za koji smo unijeli slog sa nepoznatim vrijednostima poeo da isporuuje artikle, prilikom unoenja informacije o tome esto bi bilo zaboravljeno da se eliminie prethodno uneen slog sa nepoznatim vrijednostima. 4. anomalija brisanja, ovo je inverzno anomaliji unoenja, naime ako izbriemo sve artikle koje isporuilac alje tada nesvjesno gubimo informaciju o samom isporuiocu i njegovoj adresi. U ovom primjeru svi gore navedeni problemi nestaju ukoliko se data tabela predstavi sa dvije manje tabele. isporuilac ( IME_I, ADRESA ) isporuuje ( IME_I, ID_ARTIKLA, CIJENA ) Kod ovakve dekompozicije ne postoji dupliciranje adrese, jer za svakog isporuioca adresa se dri u jednom slogu tabele isporuilac. Dakle nema anomalije auriranja. Moemo predstaviti informaciju o imenu i adresi nekog isporuioca iako taj isporuilac ne alje nijedan artikl (dakle nema anomalije unoenja ). Na kraju moemo izbrisati sve artikle datog isporuioca, da pri tome zadrimo informaciju o njegovom imenu i adresi, dakle nema ni anomalije brisanja. 57. ta je konzistentnost BP? Ako se baza nalazi u stanju koje odgovara realnom stanju sistema koji se modelira, tada kaemo da je ona u konzistentnom stanju. Na primjer, ako je stanje na nekom raunu u banci razliito od onog koji se trenutno nalazi u bazi podataka, onda je baza u nekonzistentnom stanju. Operacija auriranja baze podataka, prevode bazu iz jednog stanja u drugo (dodajudi, briudi ili ispravljajudi podatke u bazi). Stoga su ove operacije sposobne da narue integritet podataka, to jest da dovedu bazu podataka u nekonzistentno stanje. 58. Relacioni sistemi za upravljanje BP? Danas se najvie koriste SUBP zasnovani na relacionom modelu. Najpoznatiji relacioni SUBP su: ORACLE, INFORMIX, MS ACCESS. Vedina poznatih relacionih SUBP omogudava: 1. Definisanje tabele, njihovih polja (atributa) i integritetskih ogranienja nad tim atributima pomodu nekog od specijalizovanih jezika za kreiranje tabela. 2. Postavljanje upita bazi putem nekog od standardnih upitnih jezika, kao to je na primjer SQL. 3. Izradu aplikacija za bazu podataka pomodu nekog od programskih jezika koji je sastavni dio SUBP. Na primjer, u MS ACCESS-u taj programski jezik je VBA-Visual Basic for Applications. Aplikacije za baze podataka su u stvari programi namijenjeni krajnjim korisnicima za pretraivanje i auriranje baza podataka. 59. ta je relaciona algebra Relaciona algebra definie skup operacija pomodu kojih je mogude dobiti eljenu relaciju (tabelu) iz skupa datih relacija (tabela). - Konvencionalne skupovne operacije, unija, presjek, razlika i Dekartov proizvod; - Specijalne relacione operacije selekcija, projekcija, spajanje i dijeljenje; - Dodatne operacije relacione algebre, operacije koje su se kasnije dodavale orginalnoj relacionoj algebri da bi se povedala njena mod kao upitnog jezika- Skalarna raunanja u relacionoj algebri; Operacije auriranja baze; - Operacije u prisustvu nula vrijednosti;

Relaciona algebra svodi se na izraunavanje algebarskih izraza. Ti izrazi graeni su od unarnih i binarnih operacija, operanada, te zagrada. Pritom je rije o algebarskim operacijama iji operandi su tabele (relacije), a rezultati opet tabele (relacije). Svaki algebarski izraz predstavlja jedan upit u bazu, a njegova vrijednost predstavlja odgovor na upit. Dakle odgovor na upit izraava se kao nova (virtualna) relacija dobivena iz postojedih relacija primjenom algebarskih operacija.60. ta je relaciona baza podataka?

Za definisanje relacione baze podataka koristidemo slijededu definiciju: Relaciona baza podataka je skup dvodimenzionalnih tabela meusobno povezanih relacijama i jednog niza operacija za izdvajanje pojedinih kolona i redova u cilju formiranja novih tabela. Relacije u relacionoj bazi podataka formira i odrava SUBP. Relaciona baza podataka, dakle, smjeta sve podatke u tabele. Sve operacije nad podacima se izvode nad samim tabelama ili se proizvode nove tabele. Redovi relacione tabele analogni su slogu, a kolone polju.61. Zadatak 1:

Kreirati relacionu bazu podataka Biblioteka kojom de se evidentirati i pratiti promet (posudba i vradanje) knjiga iz (i u) studentske Biblioteke. Tabele koje ine bazu (ema baze): KNJIGE (Id_knjige, Naziv, Autor, Izdavac, God_izd) CLANOVI (Id_clana, Prezime, Ime, Adresa, Index_br) PROMET(Id_clana, Id_knjige, Datum_Izd, Datum_Vrac, Vracena) Polja Id_clana i Id_knjige u tabeli PROMET napravite da budu lookup polja da biste u njih lake i bez napora mogli unositi podatke. Nakon to tabele kreirate i poveete ih relacijama, (napravite bazu podataka) popunite tabele podacima, prvo, tabele KNJIGE i CLANOVI (najmanje 3 lana i 5 knjiga), a zatim u tabelu PROMET unesite (protokol) promet Biblioteke, gdje dva-tri lana podiu po jednudvije knjige. Podatke u tabelu PROMET (a moete i u druge dvije tabele) unosite pomodu obrasca (forme), koji trebate prethodno kreirati pomodu arobnjaka. Zatim napravite upit iz kojeg de se vidjeti koja osoba (poimenice) i kada je podigla koju knjigu.62. Zadatak 2:

Na raunaru, u Accessu, izraditi i demonstrirati (pokazati) profesoru (ili viem asistentu) slijededi zadatak: 1. Kreirati na desktopu folder sa imenom, prezimenom i brojem indeksa 2. Kreirati u prethodno kreiranom folderu fajl vjezba02.accdb 3. Kreirati tabelu Student sa slijededim poljima: Ime, Prezime, Broj indeksa, Fakultet, Smjer, Godina Upisa 4. Kreirati tabelu Ispit sa slijededim poljima: profesor, predmet, redni broj predmeta, godina

5. Uspostaviti relaciju M:N kreiranjem tabele Polaganje koja (pored obaveznih, jer je to relacija vie prema vie !) treba da sadri polja: datum ispita, i ocjena 6. Napraviti formu za unos u tabelu Student i unijeti najmanje 4 zapisa 7. Napraviti formu za unos u tabelu Ispit u unijeti najmanje 4 zapisa 8. Napraviti formu za unos u tabelu Polaganje i unijeti najmanje 6 zapisa 9. Kreirati upit Studenti_pali_ispit za sve studente koji nisu poloili ispite. Upit treba da sadri slijededa polja ime, prezime, Broj indeksa, Smjer, Fakultet, datum ispita 10. Kreirati izvjetaj Ispiti u kome treba da se nau slijededi podaci: datum ispita, ime, prezime, fakultet, profesor, predmet. U izvjetaju treba da se nau samo ispiti kod kojih je ocjena 8 ili 9 i kod kojih je fakultet FIT. 11. Izvesti tabelu Student u XML format 12. Uvesti tabelu DLS iz Excela (koju dete dobiti na ispitu) u bazu podataka tako da bude sastavni dio baze podataka 13. Napraviti komandnu tablu (Switchboard) iz koje de se pozivati svi prethodno kreirani elementi (forme, izvjetaji, upiti) i gdje de se nalaziti u donjem desnom uglu dugme za zatvaranje itave aplikacije 14. Podesiti prethodno kreiranu formu kao poetnu (default) i podesiti da se statusna linija ne prikazuje, da nisu omogudeni puni meniji i da se aplikacije zove ISP_Zadatak02

63. Zadatak 3: Koji podaci iz tabele TabelaAdresaRadnika (na slici) nastanu u privremenoj tabeli dole (popunite je podacima) nakon SQL komande:

SELECT Ime, Prezime, Adresa, Grad, Republika FROM TabelaAdresaRadnika;TabelaAdresaRadnika JMBG Ime Prezime Petrovid Simid Adresa Kralja Petra 9 Bul Nikole Tesle 22 Grad Beograd Jagodina Republika Srbija Srbija

512687458 ore 758420012 Marija 102254896 Savo

Jovanovid Njegoeva 17 Laze Lazarevida 10

Podgorica Crna Gora Subotica Srbija

876512563 Svetlana Adimovid

SELECT Ime, Prezime, Adresa, Grad, Republika FROM TabelaAdresaRadnika;JMBG Ime Prezime Petrovid Adresa Kralja Petra 9 Bul Nikole Tesle 22 Grad Beograd Republika Srbija

512687458 ore

758420012 Marija

Simid

Jagodina Srbija

102254896 Savo

Jovanovid Njegoeva 17

Podgorica Crna Gora Srbija

876512563 Svetlana Adimovid Laze Lazarevida 10 Subotica