27
ETŠ “MIJA STANIMIROVIĆ” NIŠ SEMINARSKI RAD Predmet: INFORMACIONI SISTEMI I BAZE PODATAKA ŠKOLSKA BIBLIOTEKA Mentor Učenici: Ivana Miladinović Karović Nikola Ivan Mitić Ilija Živković Aleksandar Stoiljković III-6 1

Seminarski Rad Baze

Embed Size (px)

DESCRIPTION

Seminarski rad vezan za SQL baze

Citation preview

ET MIJA STANIMIROVINI

SEMINARSKI RAD

Predmet: INFORMACIONI SISTEMI I BAZE PODATAKA

KOLSKA BIBLIOTEKA

MentorUenici:Ivana Miladinovi Karovi NikolaIvan MitiIlija ivkovi Aleksandar Stoiljkovi III-6

Ni, april, 2015

Sadraj

Uvod...........................................................................................3

kolska biblioteka.....................................................................4

ER dijagram..............................................................................5

Relacioni model.........................................................................6

Kreiranje baze podatakaSQL naredbama.............................................................7,8,9,10

Punjenje baze podatakaSQL naredbama......................................................11,12,13,14,15,16

SQL upiti nad bazom podataka sa rezultatima....................................................17,18

Podela posla19

Uvod

Pre kreiranja baze podataka potrebno je uraditi nekolicinu stvari kako bi lake kreirali bazu bez greaka.Iz verbalnog opisa zadatka ''kolska biblioteka'' trebamo napraviti bazu podataka.Pre svega trebamo napraviti ER dijagram kako bi lake uvideli kako treba da poveemo tabele i koji su odnosi izmeu njih.Zatim taj ER dijagram prebacujemo u relacioni model radi jednostavnijeg kreiranja tabela, jer odavde uviamo lake sta je klju tabele ,a takoe ima i dodatnih kolona zbog povezivanja tabela.Zatim pomou SQL naredbi kreiraemo tabele sa kolonama. U zavisnosti od kolona odrediemo tip unosa kao i ogranienja zapisa.Kada sve bude kreirano , bazu podataka emo popuniti proizvoljno pomou SQL naredbi.Tokom popunjavanja bitno je da pratimo redosled kolona u tabeli, kako ne bi na pogrenom mestu upisali pogrean podatak.Na kraju svega toga proveriemo da li smo dobro kreirali nau bazu pomou SQL upita.SQL upiti su naredbe pomou kojih izvlaimo odreene podatke iz tabele, tako da ako smo pravilno kreirali bazu , podatke koje odaberemo za izvlaenje stvarno e se pojaviti.

KOLSKA BIBLIOTEKA

Kreirati bazu podataka kolske biblioteke. U biblioteci se vodi evidencija o knjigama. Za svaku knjigu se pamti ISBN (jedinstveni identifikator knjige), UDK broj (univerzalni decimalni klasifikator), naziv i broj raspoloivih primeraka.Za svaku knjigu se zna ko je autor koji je napisao. Jedan autor moe da napie vie knjiga. Autor se karakterie imenom, prezimenom, ulicom u kojoj ivi i zvanjem koje ima. Knjige izdaju izdavai. Svaki izdava se karakterie nazivom i adresom.Jedan izdava moe da izdaje vie knjiga, a jedna knjiga moe da bude izdata od strane vie izdavaa. Za svako izdanje pamti se godina izdanja. Za lanove biblioteke se zna matini broj, ime, prezime adresa i mesto stanovanja i kontakt telefon.Potrebno je pratiti da li je knjiga na itanju, i ako jeste koji lan biblioteke je iznajmio. Ako je knjiga na itanju pamti se datum izdavanja. Kada se knjiga vrati pamti se datum vraanja.

ER dijagramTelefonPrezime

Adresa_iIme

JMBGIzdavalan

M:N

MestoAdresa1:MDatum izdavanjaNaziv

Izdaje

ita

Godina izdanja

Datum vraanja

1:M1:N

Knjiga

UDKISBN

Naziv knjige0:1Br. raspoloivih primeraka

Napisao

UlicaIme autora

1:N

ZvanjePrezimeAutor

Relacioni model

Knjiga(ISBN,UDK,naziv_knjige,broj_raspoloivih_primeraka,ime_autora)Izdava (naziv,adresa)Izdaje(naziv,ISBN,godina_izdanja)ita(ISBN,JMBG,datum_izdavanja,datum_vraanja)lan(JMBG,ime,prezime,telefon,adresa,mesto)Autor(ime_autora,prezime,ulica,zvanje)

1:NIzdaje

#Naziv#ISBN*Godina izdanjaIzdava

#Naziv*Adresa

N:1Knjiga

#ISBN*UDK*Naziv knjige*Br.raspoloivihprimerakaAutor

#Ime autora*Prezime*Ulica*Zvanje

N:1

N:1ita

#JMBG#ISBN*Datum izdavanja*Datum vraanjalan

#JMBG*Ime*Prezime*Telefon*Adresa*Mesto

1:N

Kreiranje baze podatakaSQL naredbama

CREATE DATABASE Skolska_bibliotekaCREATE TABLE Knjiga(ISBN int(6) NOT NULL,UDK nchar,naziv_knjige char(50),broj_raspolozivih_primeraka int,ime_autora char(15),Constraint pk_isbnPrimary key (ISBN),Constraint fk_imeForeign key ime_autoraReferences Autor(ime_autora))

CREATE TABLE Izdavac(naziv char(30) NOT NULL,adresa_i char(60),Constraint pk_nazivPrimary key (naziv))

CREATE TABLE Clan(JMBG int(13) NOT NULL,ime char(15),prezime char(20),telefon int(10),adresa char(60),mesto char(30),Constraint pk_JMBGPrimary key (JMBG),Constraint chk_JMBGCheck (JMBG=13))CREATE TABLE Cita(ISBN int(6) NOT NULL,JMBG int(13) NOT NULL,datum_izdavanja date,datum_vracanja date,Constraint pk_ISBNJMBGPrimary key (ISBN,JMBG),Constraint chk_JMBG1Check (JMBG=13))

CREATE TABLE Izdaje(naziv char(30) NOT NULL,ISBN int(6) NOT NULL,godina_izdanja int(4),Constraint pk_nazivISBNPrimary key (naziv,ISBN),Constraint chk_godCheck (godina_izdanja>1000 and godina_izdanja1980ORDER BY godina_izdanja DESC;

4. SELECT ISBN,UDKFROM KnjigaWHERE broj_raspolozivih_primeraka>1000;

5. SELECT adresaFROM Clan

6. SELECT JMBGFROM CitaWHERE ISBN=498034;

7. SELECT ime_autoraFROM AutorWHERE ime_autora like (%a%);

8. SELECT telefonFROM ClanWHERE mesto='Beograd' and mesto='Subotica';

9. SELECT naziv_knjigeFROM KnjigaWHERE LEN(naziv_knjige)>10;

10. SELECT distinct ulicaFROM Autor;

Rezultati1. Ime i prezime1. Marko Markovic2. Mili Nikic

2. Naziv ISBN godina_izdanja1. Alma 578943 20002. Bernar 483523 19893. Beobook 254213 19904. JRJ 152566 18905. Libretto 498034 19756. Kornet 727427 19427. Pakadin 942156 19988. Rad 421516 20059. Cet 254213 199910. Dereta 942156 1997

3. Godina_izdanja1. 20052. 20003. 19994. 19985. 19976. 19907. 1989

4. ISBN UDK1. 483523 163,412. 254213 163,413. 152566 163,414. 727427 163,415. 942156 163,416. 421516 163,41

5. Adresa1. Ulica BB2. Ulica BB3. Ulica BB4. Ulica BB5. Ulica BB6. Ulica BB7. Ulica BB8. Ulica BB9. Ulica BB

6. JBMG 1. 08059904129782. 2404990161631

7. Ime_autora1. Paul2. Lav3. Samuel

8. Telefon1. 0633153562. 062415123. 06123414

9. Naziv_knjige1. Starac I more2. ekajui godoa

10. Ulica1. Ulica BB2. Kraljevska 18

Podela poslaIvan Miti Ispunjavanje ER dijagrama I ispunjavanje relacionog modela na osnovu ER dijagrama.Ilija ivkovi SQL naredbe za punjenje baze podatakaNikola Karovi Verbalni opis zahteva za kreiranje baze podataka i opis svih tabela koje e se kreirati.Aleksandar Stoiljkovi SQL naredbe za kreiranje baze podataka I 10 SQL upita nad kreiranom bazom sa rezultatima.

20