Вы находитесь на странице: 1из 18

Smer: Tehnika i informatika Predmet: Baze podataka

Seminarski rad
Tema: BAZA PODATAKA BIBLIOTEKE LOGOS

Asistenti: Mr Radojica Petrovi Maja Boovi Profesor: Dr Danijela Miloevi

lanovi grupe: Ivana Ili 99/2007 Igor Vukovi 202/2007 Darko Zorni 780/2008

BIBLIOTEKA "ZMAJ" Biblioteka "Zmaj" prati ponudu knjiga raznih izdavaa radi obnavljnja i obogaivanja svog knjinog fonda. Svaki izdava moe da izda vie dela raznih pisaca, pri emu svako delo ima jednog i samo jednog autora. Isto delo nekog pisca se moe pojaviti u izdanju vie raznih izdavaa, ali svako izdanje ima jednog i samo jednog izdavaa i ima jedinstven identifikacioni broj ISBN. Neka dela se izdaju kao zbirka pesama ili pripovedaka istog pisca, a antologije pesama ili pripovedaka sadre dela raznih pisaca. Potrebno je da se prate sledei podaci: o izdavaima: matini broj, naziv sedite, telefon za kontakt, vebsajt ako ima o piscima: evidencioni broj, ime, prezime, godina roenja, zemlja o knjigama: ifra, naslov, ISBN, autor, izdava, jezik, pismo, godina izdanja, tira (broj izdatih primeraka u jednom izdanju), cena Resenje: 1. UVOD Predmet seminarskog rada je baza podataka biblioteke LOGOS. Baza podataka je potrebna radi lakeg uzimanja potrebnih knjiga. 2. POSLOVNI CILJEVI Cilj biblioteke LOGOS je da svakom svom lanu obezbedi knjige razliite tematike bilo iz odreenih strunih i naunih oblasti. 3. STRUKTURALNA PRAVILA -Pravila koja smo modelovali jesu strukturalna poslovna pravila, a pravila koja nismo mogli da modelujemo nego ostaju zabelezena u dokumentaciji konceptualnog modela za kasniju upotrebu su proceduralna poslovna pravila. Strukturalna proceduralna pravila : 1. Svaki izdava moe da izda jedno ili vie izdanja. 2. Svako izdanje mora da se nalazi kod jednog i samo jednog izdavaa. 3. Svako izdanje mora da objaviji jedno i samo jedno delo. 4. Svako delo moe da izdaje jedno ili vie izdanja. 5. Svako delo moe da ima jednog i samo jednog autora. 6. Svaki autor moe da pie jedno ili vie dela. 7. Svako delo moe sadri jednu ili vie zastupljenosti. 8. Svaka zastupljenost mora da pripada jednom i samo jednom delu. 9. Svako delo moe da sainjava jedna ili vie zastupljenosti. 10. Svaka zastupljenost mora da obuhvati jedno i samo jedno delo. Navedena pravila su modelovana na ERD dijagramu

5.PROCEDURALNA POSLOVNA PRAVILA


Proceduralna poslovna pravila: Knjige mogu uzimati samo lanovi biblioteke Logos uz prilozenu clansku kartu u kojoj se evidentira kada je clan uzeo i vratio knjigu.Najvie se mogu zaduiti tri knjige.

6. ERD BAZE PODATAKA


ER dijagram za biblioteku Logos Na ERD-u se pojavljuje veza vie prema vie (M:M) koju razreavamo uvoenjem novog veznog entiteta IZDANJE i rekurzivna veza vie prema vie kod entiteta DELO. Evo kako sada izgleda ER dijagram posle uvodjenja veznog entiteta:

ima

IZDAVA #matini broj *naziv *sediste *telefon vebsajt

pie

AUTOR #evidencioni broj *ime *prezime *godina roenja *zemlja ZASTUPLJENOST *vrsta *od strane *do strane

izdaje

DELO #ifra *naslov *cena se nalazi

sadri pripada sacinjava obuhvata

IZDANJE #ISBN *jezik *pismo *godina izdanja *tira

objavljuje

izdaje

1. Instance entiteta koji se nalaze na ERD-u. Instance entiteta: Izdava 1. 312 Alma,Beograd,011/2437-204,www.alma.co.rs 2. 123 Ruzno pae,Novi Sad,021/533-044,www.ruzno-pace.com 3. 321 Arhipelag, Novi Beograd,011/3344536,www.arhipelag.rs 4. 213 Neor,Novi Sad,021/545-333,www.neor.co.rs 5. 231 Profil knjiga,Beograd, 011/ 26 39 995, www.profil-knjiga.rs Autor 1. 4325 Ivo Andri,1892,Bosna i Hercegovina 2. 5136 Branko opi ,1915 , Bosna i Hercegovina 3. 5478 Miroslav Anti,1932 , Srbija 4. 5678 Vojislav uri,1912,Srbija 5. 3456 Vojislav juri,1912,Srbija Delo 1. 531.1 Na Drini uprija,1550dinara 2. 378.2 Plavi uperak,1290 dinara 3. 536.3 Orlovi rano lete,1620 dinara 4. 653.8 Kneeva veera,1500 dinara 5. 632.6 Nemuti jezik,500 dinara Izdanje 1. 52,srpski ,latinica,1961 godina,320 2. 45 srpski,latinica,1959 godina,500 3. 35 srpski,irilica,1989 godine,700 4. 25 srpski,latinica,1965 godine,800 5. 15 srpski,irilica,1972 godine,900 2.Parovi instanci koje su u toj vezi IZDANJE-DELO 1961 je izdata knjiga na Drini cuprija DELO-AUTOR Autor dela na Drini cuprija je Ivo Andric IZDAVA-IZDANJE Izdavacka kuca Alma je 1961 izdala delo...

7. RELACIONA EMA BAZE PODATAKA


Na narednoj slici emo prikazati prevoenje ERD-a u relacionu emu baze podataka, koja e nam kasnije pomoi kod kreiranja tabela tj. entiteti e nakon transformacije postati tabele, atributi kolone, veze e postati strani kljuevi, a jedinstveni indetifikatori e postati primarni kljuevi to se iz priloenog moe videti.
IZDAVACI pk *matini broj *naziv *sediste *telefon vebsajt AUTORI pk*evidencioni broj *ime *prezime *godina roenja *zemlja

DELA fk *evid_br_aut pk *ifra *naslov *cena ZASTUPLJENOSTI *vrsta *od strane *do strane pk fk1 *sif_del pk fk2 *sif_ant

IZDANJA pk *ISBN *jezik *pismo *godina izdanja *tira fk1*mat_br_izd fk2*sif_dela

Ovde moete videti kako e izgledati transformisanje entiteta u tabele. Ime tabele: IZDAVACI Maticni broj naziv sediste kontakt vebsajt
312 123 321 213 231 Alma Ruzno pae Arhipelag Neor Profil knjiga Beograd Novi Sad Novi Beograd Novi Sad Beograd 5555555 021/533-044 011/3344-536 021/545-333 011/ 26 39 995 www.alma.co.rs www.ruznopace.com www.arhipelag.rs www.neor.co.rs www.profil-knjiga.rs

Ime tabele: IZDANJA


ISBN 52 45 35 25 15 jezik pismo latinica latinica cirilica latinica cirilica

srpski srpski srpski srpski srpski

godina izdanja 1961 1959 1989 1965 1972

tiraz
320 500 700 1000 1500

maticni broj izdavaca 312 123 321 213 231

sifra dela 531.1 378.2 536.3 653.8 632.6

Ime tabele:DELA sifra


531.1 378.2 536.3 653.8 632.6

naslov
Na drini cuprija Plavi cuperak Orlovi rano lete Knezeva vecera Nemusti jezik

cena
1550 dinara 1290 dinara 1620 dinara 1500 dinara 500 dinara

evidencioni broj autora


4325 5136 5478 5678 3456

Ime tabele: AUTORI


Evidencioni broj 4325 5136 5478 5678 3456 Ime Ivo Branko Miroslav Vojislav Vojislav Prezime Andric opic Anti Djuric Djuric Godina rodjenja 1892 1915 1932 1912 1912 Zemlja Bosna i Hercegovina Bosna i Hercegovina Srbija Srbija Srbija

Ime tabele:ZASTUPLJENOSTI
vrsta pesme pripovetke od strane 210 120 do strane 270 190 sifra dela 653.8 632.6

sifra antologije
545 456

8. IMPLEMENTACIJA
Baza podataka za biblioteku LOGOS je implementirana korienjem Oracle Application Express alata. Sada emo prikazati postupak kreiranja tabela koji je izvren korienjem SQL komandi. Kreiranno je ukupno pet tabela na osnovu relacionog modela koje sada moete videti. Kod za kreiranje tabela: CREATE TABLE izdavaci (maticni_broj NUMBER (10) CONSTRAINT izd_maticni_broj_pk PRIMARY KEY, naziv VARCHAR2 (20) CONSTRAINT izd_naziv_nn NOT NULL, sediste VARCHAR2 (15) NOT NULL, kontakt NUMBER (15) NOT NULL, vebsajt VARCHAR2(30) NOT NULL ); DESCRIBE izdavaci;

Kod za punjenje tabele izdavaci: INSERT INTO izdavaci(maticni_broj,naziv,sediste,kontakt,vebsajt) VALUES(312,'Alma','Beograd','5555555','www.alma.rs'); INSERT INTO izdavaci(maticni_broj,naziv,sediste,kontakt,vebsajt) VALUES(123,'Ruzno_pace','Novi_Sad','021533044','www.ruzno_pace.com'); INSERT INTO izdavaci(maticni_broj,naziv,sediste,kontakt,vebsajt) VALUES(321,'Arhipelag','Novi_Beograd','0113344536','www.arhipelag.com'); INSERT INTO izdavaci(maticni_broj,naziv,sediste,kontakt,vebsajt) VALUES(213,'Neor','Novi_Sad','021545333','www.neor.co.rs'); INSERT INTO izdavaci(maticni_broj,naziv,sediste,kontakt,vebsajt) VALUES(231,'Profil_knjiga','Beograd','0112639995','www.profil_knjiga.rs'); SELECT*FROM izdavaci;

Kod za kreiranje autori: CREATE TABLE autori (evid_br NUMBER (15) CONSTRAINT auto_evid_br_pk PRIMARY KEY, ime VARCHAR2 (20) CONSTRAINT auto_ime_nn NOT NULL, prezime VARCHAR2 (20) NOT NULL, godina_rodjenja NUMBER (4) NOT NULL, zemlja VARCHAR2(30) NOT NULL ); DESCRIBE autori;

Kod za punjenje tabele autori: INSERT INTO autori(evid_br,ime,prezime,zemlja,godina_rodjenja) VALUES (4325,'Ivo','Andric','Bosana_i_Hercegovina','1892'); INSERT INTO autori(evid_br,ime,prezime,zemlja,godina_rodjenja) VALUES (5136,'Branko','Copic','Bosana_i_Hercegovina','1915'); INSERT INTO autori(evid_br,ime,prezime,zemlja,godina_rodjenja) VALUES (5478,'Miroslav','Antic','Srbija','1932'); INSERT INTO autori(evid_br,ime,prezime,zemlja,godina_rodjenja) VALUES (5678,'Vojislav','Djuric','Srbija','1912'); INSERT INTO autori(evid_br,ime,prezime,zemlja,godina_rodjenja) VALUES (3456,'Vojislav','Djuric','Srbija','1912'); SELECT*FROM autori;

Kod za kreiranje tabele dela: CREATE TABLE dela (sifra NUMBER(15), naslov VARCHAR2(30) NOT NULL, cena NUMBER(5) NOT NULL, evid_br_autora NUMBER(15) NOT NULL, CONSTRAINT dela_evid_br_autora_fk FOREIGN KEY(evid_br_autora) REFERENCES autori(evid_br), CONSTRAINT dela_pk PRIMARY KEY(sifra)); DESCRIBE dela;

Kod za punjenje tabele dela: INSERT INTO dela(sifra,naslov,cena,evid_br_autora) VALUES(531.1,'Na drini cuprija','1550',4325); INSERT INTO dela(sifra,naslov,cena,evid_br_autora) VALUES(378.1,'Plavi_cuperak','1290',5136); INSERT INTO dela(sifra,naslov,cena,evid_br_autora) VALUES(536.3,'Orlovi_rano_lete','1620',5478); INSERT INTO dela(sifra,naslov,cena,evid_br_autora) VALUES(653.8,'Knezeva vecera','1500',5678); INSERT INTO dela(sifra,naslov,cena,evid_br_autora) VALUES(632.6,'Nemusti_jezik','500',3456); SELECT*FROM dela;

Kod za kreiranje tabele zastupljenosti: CREATE TABLE zastupljenosti (vrsta VARCHAR2(15) NOT NULL, od_str NUMBER(6) NOT NULL, do_str NUMBER(6) NOT NULL, sif_dela NUMBER(6)NOT NULL, sif_anto NUMBER(6) NOT NULL, CONSTRAINT zast_sif_dela_fk FOREIGN KEY(sif_dela) REFERENCES dela(sifra), CONSTRAINT zast_sif_anto_fk FOREIGN KEY(sif_dela) REFERENCES dela(sifra), CONSTRAINT zastupljenosti_pk PRIMARY KEY(sif_dela,sif_anto)); DESCRIBE zastupljenosti;

Kod za punjenje tabele zastupljenosti: INSERT INTO zastupljenosti(vrsta,od_str,do_str,sif_dela,sif_anto) VALUES('pesma','210','270',653.8,545); INSERT INTO zastupljenosti(vrsta,od_str,do_str,sif_dela,sif_anto) VALUES('pripovetka','120','190',632.6,456); SELECT*FROM zastupljenosti;

Kod za kreiranje tabele izdanja: CREATE TABLE izdanja (isbn NUMBER(15)NOT NULL, jezik VARCHAR2(20)NOT NULL, pismo VARCHAR2(15)NOT NULL, godina_izdanja NUMBER(4) NOT NULL, tiraz NUMBER(5), mat_br NUMBER(10)NOT NULL, sif_dela NUMBER(15)NOT NULL, CONSTRAINT izd_mat_br_fk FOREIGN KEY(mat_br)REFERENCES izdavaci(maticni_broj), CONSTRAINT izd_sif_dela_fk FOREIGN KEY(sif_dela)REFERENCES dela (sifra), CONSTRAINT izdanja_pk PRIMARY KEY(isbn)); DESCRIBE izdanja;

Kod za punjenje tabele izdanja: INSERT INTO izdanja(ISBN,jezik,pismo,godina_izdanja,tiraz,mat_br,sif_dela) VALUES(52,'srpski','latinica','1961','320',312,531.1); INSERT INTO izdanja(ISBN,jezik,pismo,godina_izdanja,tiraz,mat_br,sif_dela) VALUES(45,'srpski','latinica','1959','500',123,378.2); INSERT INTO izdanja(ISBN,jezik,pismo,godina_izdanja,tiraz,mat_br,sif_dela) VALUES(35,'srpski','cirilica','1989','700',321,536.3); INSERT INTO izdanja(ISBN,jezik,pismo,godina_izdanja,tiraz,mat_br,sif_dela) VALUES(25,'srpski','latinica','1965','1000',213,653.8); INSERT INTO izdanja(ISBN,jezik,pismo,godina_izdanja,tiraz,mat_br,sif_dela) VALUES(15,'srpski','cirilica','1972','1500',231,632.6); SELECT*FROM izdanja;

9. KREIRANJE APLIKACIJE Biblioteke Logos


Iz Home prozora OAE bira se nova ikona Applicatio Builder/Create. Prvi korak u ukreiranju aplikacije je davanje imena aplikacije. U ovom sluaju to je ime BibliotekaLogos.

Slika1.Imenovanje aplikacije Sledei korak predstavlja kreiranje strana aplikacije. Ukupno postoji 7 strana aplikacije, pri emu e strane biti dostupne korienjem kartice i imae formu za unos podataka i izvetaj odnosno prikaz ve unetih podataka.

Slika2. Kreirane strane za aplikaciju BibliotekeLogos

Prilikom kreiranja aplikacije bira se i izgled korisnikog interfejsa. Oracle Applicatio Express nudi veliki broj tema za korisniki interfejs. Izgled moguih tema je prikazan na slici 3..

Slika 3. Izgled tema za korisniki interfejs Kada su kreirane sve osnovne strane i odreena tema korisnikog interfejsa, dobija se prozor koji daje pregled nove aplikacije (slika 4.).

Slika 4. Pregled aplikacije BibliotekeLogos

10..KREIRANJE IZVETAJA
Nakon kreiranja aplikaacije, kreiran je izvetaj Izvestaj o knjigama kao posebna strana. On objedinjuje podatke iz vie razliitih tabela. Postupak kreiranja je sledeci: 1)Biramo opciju REPORT (slika5)

Slika 5. 2)Zatim biramo opciju SQL Report (slika6)

Slika 6. 3) Sledei korak je davanje imena strane . U ovom sluaju to je izvestaj knjigama.

4)Spajanje tabela;

4)Prilikom kreiranja ovih izvetaja koriene su sledee SQL naredbe:

5)Na slici 17. je prikazana aplikacija BibliotekaLogos. Na strani se vidi i izvetaj o ve


unetim knjigama.

11.INFORMACIONE POTREBE KORISNIKA Biblioteka Logos raspolae velikim fondom knjiga koje koriste njeni lanovi . Takoe, ona poseduje i podatke kao to su: naslovi knjiga, autori, redni broj knjige, izdavai, ulanjeni gradjani. Baza podataka biblioteke treba da sadri: izdavaa,izdanje dela,delo. Knjige se nabavljaju od izdavakih kua i imaju ifru, kao i druge podatke. Mogu se iznajmiti lanovima uz lansku kartu i koristiti odreeno vreme, pri emu se u evidencioni karton upisuje redni broj knjige koja je iznajmljena. Isto tako kada lan vrati iznajmljenu knjigu u isti evidencioni karton se upisuje datum razduenja knjige.

12..PRIMERI UPITA KOJIMA SMO DOBILI INFORMACIJE U IZVESTAJU


select "AUTORI"."IME" as "IME", "AUTORI"."PREZIME" as "PREZIME", "DELA"."NASLOV" as "NASLOV", "IZDAVACI"."NAZIV" as "NAZIV", "IZDANJA"."GODINA_IZDANJA" as "GODINA_IZDANJA", "IZDANJA"."TIRAZ" as "TIRAZ" from "IZDAVACI" "IZDAVACI", "IZDANJA" "IZDANJA", "DELA" "DELA", "AUTORI" "AUTORI" where "AUTORI"."EVID_BR"="DELA"."EVID_BR_AUTORA" and "IZDAVACI"."MATICNI_BROJ"="IZDANJA"."MAT_BR"

Ivana Ili, 99/2007 Username: TI3S11 Password:ivana Igor Vukovi, 202/2007 Username: TI3S04 Password: oktagon Darko Zorni, 780/2008 UsernameTIS03 Password: zoki

Вам также может понравиться