You are on page 1of 18

INTERNACIONALNI UNIVERZITET TRAVNIK

FAKULTET INFORMACIONIH TEHNOLOGIJA


TRAVNIK

VOZNI PARK
SEMINARSKI RAD

Predmet: Baze podataka

Mentor: Student:
Profesor: Doc.dr. Salkić Hadžib Čehić Amila
V.Asistent: Čičak Bakir

Travnik, jun 2021.god


SADRŽAJ
1. UVOD.................................................................................................................................3
2. MySQL...............................................................................................................................4
2.1. SQL..............................................................................................................................4
2.2. MySQL........................................................................................................................5
2.2.1. MySQL Workbench.............................................................................................5
3. BAZA PODATAKA „Vozni park“...................................................................................6
3.1. TABELE......................................................................................................................6
3.1.1. Tabela „marka_vozila“.........................................................................................6
3.1.2. Tabela „vrsta_vozila“...........................................................................................6
3.1.3. Tabela „o_vozilu“................................................................................................7
3.1.4. Tabela „vozila“.....................................................................................................8
3.1.5. Tabela “odrzavanja”.............................................................................................8
3.1.6. Tabela „vozac1“...................................................................................................9
3.1.7. Tabela „voznja1“................................................................................................10
3.2. UPISIVANJE PODATAKA.....................................................................................11
3.3. SQL UPITI................................................................................................................12
3.3.1. Upit broj 1..........................................................................................................12
3.3.2. Upit broj 2..........................................................................................................12
3.3.3. Upit broj 3..........................................................................................................13
3.3.4. Upit broj 4..........................................................................................................13
3.3.5. Upit broj 5..........................................................................................................14
3.3.6. Upit broj 6..........................................................................................................14
3.3.7. Upit broj 7..........................................................................................................14
3.3.8. Upit broj 8..........................................................................................................15
3.3.9. Upit broj 9..........................................................................................................15
3.3.10. Upit broj 10........................................................................................................16
4. ZAKLJUČAK..................................................................................................................17
5. LITERATURA.................................................................................................................18
1. UVOD

Baze podataka su postale esencijalni dio modernog društva. Većina nas se svaki dan susreće s
nekoliko aktivnosti koje uključuju neku interakciju s bazama podataka. Na primjer, svaki put
kad odlazimo u banku podići novac, kada rezervišemo kartu za koncert, kupujemo nešto
preko Interneta, ili čak kod običnog odlaska u prodavnicu raznovrsnom robom velike su
šanse da aplikacija na računaru kojem se pristupa za obradu pohranjuje i ažurira podatke u
neku vrstu baze podataka. Ovo su većinom primjeri tzv. tradicionalnih baza podataka koje
spremaju informacije u tekstualni ili brojčani tip podataka. Međutim razvoj sistema za
upravljanje baza podataka nam danas omogućuje i pohranu slika, video i audio isječaka u
digitalnom formatu, koji su važan dio složenih multimedijskih baza podataka koje se koriste
u pretraživačima Interneta, geografskim informacionim sistemima, skladištima podataka i
sistemima za analitičko odlučivanje.

Jedan od najraširenijih sistema za upravljanje relacionim bazama podataka koji se danas


koristi je MySQL, sistem otvorenog koda koji se pokreće na poslužitelju, te pruža pristup
višestrukom broju korisnika i pohranu višestrukog broja baza podataka. Neke od najvećih
svjetskih kompanija poput Paypal-a, Twitter-a, Wikipedia-e, Adobe-a, te mnogih drugih
koriste MySQL baze podataka.

Tema ovog seminarskog rada jeste izrada jednostavne baze podataka pomoću sistema
MySQL. Baza podataka za vozni park koja će sadržavati osnovne tabele, i podatke potrebne
za jedan vozni park. Naglašavam, u ovom radu je opisana izrada samo baze podataka, koja je
osnova za dalji rad i možda izradu aplikacije koja bi bila iskoristiva.
2. MySQL

2.1. SQL

SQL je akronim za Structured Query Language, te je najpoznatiji računarski jezik korišten pri
izradi baza podataka, te manipulacijom podataka u bazi podataka. Napravljen je po uzoru na
relacioni model Edgar F. Codda predstavljen u njegovom radu "A Relational Model of Data
for Large Shared Data Banks" koji je objavio u časopisu „Association for Computing
Machinery“ 1970. godine. Razvila ga je američka tvrtka IBM, gdje je razvijena baza
podataka pod nazivom „System R“, a zadatak tada zvanog Structured English Query
Language ("SEQUEL") je bio upravljanje tom bazom podataka. Kratica SEQUEL je kasnije
promijenjena u SQL, jer je tada naziv „SEQUEL“ koristila jedna avionska kompanija u
Ujedinjenom Kraljevstvu. SQL je standardiziran preko standarda ANSI1 1986. godine i ISO2
1987. godine, te je postao referentni jezik za relacijske baze podataka.1

Naredbe u SQL-u se mogu podijeliti u četiri kategorije:

 DDL(data definition language) naredbe


 DML(data manipulation language) naredbe
 DCL(data control language) naredbe
 TCL(transaction control language) naredbe

DDL naredbe se koriste kod kreiranja i brisanja tablica, indeksa i pogleda. Osnovne DML
naredbe koje se koriste u SQL-u su CREATE TABLE, CREATE INDEX, CREATE VIEW,
ALTER TABLE, DROP TABLE, DROP VIEW i DROP INDEX.

DML naredbe se koriste za dodavanje redaka, izmjenu i brisanje podataka u tablicama, te se


najviše koriste u radu s bazama podataka. U DML naredbe spadaju SELECT, INSERT,
UPDATE i DELETE.

DCL naredbe se koristi kod dodjeljivanja dozvola za određene operacije nad bazom
podataka. U njih spadaju GRANT koja dodjeljuje pravo, te REVOKE koja oduzima pravo
nad određenom operacijom nad bazom podataka.

TCL naredbe se koriste kod upravljanja trensakcijama u SQL-u. Transakcija predstavlja skup
(obično DML) naredbi koje se izvršavaju u bazi podataka. U TCL naredbe spada COMMIT
naredba kojom se spremaju promjene u bazi podataka i ROLLBACK kojom se ukidaju sve
promjene od zadnje COMMIT naredbe.

1
.Suradnici Wikipedie, „SQL“, Wikipedia, The Free Encyclopedia, www.en.wikipedia.org/wiki/sql,
[05.06.2021.]
2.2. MySQL

MySQL je jedan od najraširenijih, relacionih sistema otvorenog koda za upravljanje bazom


podataka. Pokreće se na poslužitelju, te podržava višekorisnički pristup bazama podataka.
Razvojni tim MySQL-a dostupio je pristup izvornom kodu MySQL-a pod GNU4 licencom.
MySQL je popularan izbor baza podataka za stvaranje web aplikacija, te je centralna
komponenta LAMP paketa za izradu web aplikacija. LAMP je akronim za Linux, Apache,
MySQL, Perl/PHP/Python, a njegove inačice (sa sufiksom AMP) se mogu naći za većinu
današnjih operativnih sistema za računare.

2.2.1. MySQL Workbench

MySQL Workbench je grafički alat za dizajniranje baza podataka koji integriše SQL razvoj,
administraciju, dizajn i održavanje u jedan zajednički interfejs za MySQL baze podataka.
Prva ogledna inačica je razvijena 2005. godine i nasljednik je DBDesigner alata. Dio je
MySQL paketa od 2007. godine, a njegovo numerisanje je počelo inačicom 5.0, budući je
nasljedio DBDesigner4. Prva inačica je bila namijenjena za upotrebu na MS Windows
operativnom sistemu, a od inačice 5.1 dostupna je i na drugim platformama. Alat postoji u
besplatnom i komercijalnom izdanju, te je drugi alat po preuzimanjima s MySQL web
stranice s preko 250.000 mjesečnih preuzimanja. 2 Na slici 1 prikazana je početna forma alata
MySQL Workbench.

Slika 1. Početna forma MySQL Workbench-a

2
„MySQL Workbench“, Wikipedia, The Free Encyclopedia, www.en.wikipedia.org/wiki/MySQL_Workbench,
3. BAZA PODATAKA „Vozni park“

3.1. TABELE

Ova baza podataka se sastoji od 7 tabela, a to su sljedeće:

 marka_vozila
 o_vozilu
 odrzavanja
 vozac
 vozila
 voznja
 vrsta_vozila

3.1.1. Tabela „marka_vozila“

U prvoj tabeli, koju smo nazvali 'marka_vozila' pohranjujemo podatke o markama vozila kao
što i samo ime tabele kaže. U ovoj tabeli pravimo naziv prvog atributa 'marka_vozila_id',
kako bi nam taj atribut bio strani ključ u tabeli 'vozila'. Na taj način, upisom broja '1,2...n' biti
će nam povezano koja je to marka vozila iz same ove tabele.

Slika 2. Tabela 'marka_vozila'

3.1.2. Tabela „vrsta_vozila“

Ova tabela se ne razlikuje mnogo od prethodne 'marka_vozila' osim toga što u ovu tabelu
pohranjujemo podatke o kojoj vrsti vozila se radi. Atribut 'vrsta_vozila_id' također u tabeli
'vozila' biti strani ključ.
Slika 3. Tabela 'vrsta_vozila'

3.1.3. Tabela „o_vozilu“

U ovoj tabeli, 'o_vozilu', pohranjujemo osnovne podatke o vozilu koji bi nam mogli biti od
koristi. Imamo sedam atributa, onaj od kojeg uvijek počinjemo a to je id koji je
auto_increment, 'o_vozilu_id', sljedeci jeste 'broj_sasije', 'godina_proizvodnje',
'snaga_motora_kW', 'zapremina_motora', 'masa', 'nosivost'.

Slika 4. Tabela 'o_vozilu'


3.1.4. Tabela „vozila“

Ova tabela nam govori neke od osnovnih podataka o vozilu, kao što su registracijske oznake,
marka vozila i ostalo. Ovo nam je potrebno iz razloga kako bismo imali uvid u osnovne
informacije ukoliko nam to bude potrebno.

Slika 5. Tabela 'vozila'

Vidimo da u ovoj tabeli imamo tri strana ključa a to su: 'marka_vozila_id', 'vrsta_vozila_id' i
'o_vozilu_id'. Na taj način smo ovu tabelu povezali sa još tri tabele i njihovim vrijednostima,
tačnije vrijednostima njihovih atributa.

3.1.5. Tabela “odrzavanja”

Ova tabela se koristi za upisivanje određenih podataka o samom održavanju vozila, kako bi u
svakom trenutku imali evidenciju o istome. Kasnije u samoj aplikaciji, mogao bi se kreirati
neki podsjetnik koji bi određeni broj dana, prije nego što je potrebno uraditi neku stavku od
ovih atributa, obavijestio vozača o potrebnom izvršenju npr. istek registracije.
Slika 6. Tabela 'odrzavanja'

Vidimo da u ovoj tabeli imamo strani ključ 'vozila_id', to nam pravi relaciju između ove dvije
tabele. Sljedećom naredbenom linijom 'foreign key (vozila_id) references vozila ( vozila_id ),
definišemo strani ključ, povezujemo tabelu vozila sa tabelom odrzavanja. Nakon ključne
riječi 'foreign key' u zagradu stavljamo naziv atributa koji će biti povezan, onda imamo
ključnu riječ 'references' nakon koje slijedi naziv tabele a u zagradi ponovno imamo naziv
atrributa. Na taj način definisali smo strani ključ i samim time povezali ove dvije tabele. Tako
da, upisom id-a povezano nam je određeno vozilo sa ovim održavanjem.

3.1.6. Tabela „vozac1“

U ovoj tabeli upisivati ćemo osnovne podatke o vozaču kao što su ime, prezime i broj
dozvole, ono najosnovnije a što bi nam moglo biti potrebno. Također i atribut 'vozac1_id' iz
ove tabele će biti strani ključ u sljedećoj tabeli 'voznja1'.
Slika 7. Tabela ‘vozac1’

3.1.7. Tabela „voznja1“

U ovoj tabeli upisujemo podatke o samoj vožnji, vozača, datum, mjesto polaska, dolaska.

Slika 8. Tabela ‘voznja1’

Vidimo da u ovoj tabeli imamo relaciju sa tabelom 'vozac1', na taj način upisom id-a povezan
nam je određeni vozač iz te tabele.
3.2. UPISIVANJE PODATAKA

Na sljedećoj slici će biti prikazan upis podataka u svih sedam tabela.

Slika 9. Upis podataka

Na ovaj način smo upisivali podatke, pomoću ključne riječi 'INSERT INTO' nakon čega
slijedi naziv baze.naziv tabele u zagradi imamo atribute te tabele, nakon čega slijedi ključna
riječ 'VALUES' i u zagradi vrijednosti tih atributa.
3.3. SQL UPITI

3.3.1. Upit broj 1

MySQL iskaz za čitanje podataka iz baze podataka je SELECT. Pa u prvom primjeru


koristimo najjednostavniji upit, to jeste da nam se iz tabele 'marka_vozila' izlistaju sva vozila
koja se tu i nalaze. Izraz 'SELECT' koristi se za odabir podataka iz baze. Vraćeni podaci
pohranjeni su u tabeli rezultata.

Slika 10. Upit br.1

I vidimo da ovaj upit ispisuje sve podatke iz ove tabele.

3.3.2. Upit broj 2

Kreirati ćemo upit (query) tako da nam se iz tabele 'vozac1' ispišu 'ime' i 'broj_dozvole'.

Slika 11. Upit br.2


Po izvršenju upita, dobili smo ono što smo tražili a to jeste da nam se ispišu imena i brojevi
vozačke dozvole.
3.3.3. Upit broj 3

Kreirati upit koji prikazuje sve podatke o 'mjesto_polaska' koji počinju na slovo 'T'. U ovom
slučaju ćemo koristiti naredbu SELECT sa ključnom riječi WHERE i LIKE. Klauzala
'WHERE' koristi se za filtriranje zapisa. Koristi se za izdvajanje samo onih zapisa koji
ispunjavaju navedeni uslov. Operator 'LIKE' koristi se u klauzuli 'WHERE' za traženje
određenog uzorka u koloni.

Slika 12. Upit br.3

3.3.4. Upit broj 4

Kreirati upis koji će ispisivati podatke o vozilima čija je snaga motora veća od 50, godina
proizvodnje je između 2017-2020 i broj šasije počinje slovom 'w'. Operator 'BETWEEN'
odabire vriijednosti unutar zadanog raspona. Vrijednosti mogu biti brojevi, tekst ili datumi.
Operator 'BETWEEN' ima uključene početne i završne vrijednosti.

Slika 13. Upit br.4


3.3.5. Upit broj 5

Kreirati ćemo upit koji će ispisati podatke o vozilima čija registracija ističe prije 20.03.2015.

Slika 14. Upit br.5

3.3.6. Upit broj 6

U ovom upitu vršimo izmjenu podataka, to je da nam se 'mjesto_polaska' gdje je 'id = 2' iz
grada 'Zenica' sada bude 'Tuzla'. Izraz 'UPDATE' koristi se za modificiranje postojećih zapisa
u tabeli.

Slika 15. Upit br.6

3.3.7. Upit broj 7

U sljedećem upitu koristiti ćemo ključnu riječ 'DELETE' i na taj način iz tabele, gdje je
'vozac1_id' = 1, izbrisati ćemo taj red pomoću ovog upita. Izraz 'DELETE' koristi se za
brisanje postojećih zapisa u tabeli.
Slika 16. Upit br.7

3.3.8. Upit broj 8

U ovom upitu tražimo ispis samo kolone 'godina_proizvodnje' i to gdje 'godina_proizvodnje'


nije iznad godine 2019. 'NOT' operator prikazuje zapis ako uslovi nisu istiniti.

Slika 17. Upit br.8

3.3.9. Upit broj 9

U ovom upitu koristimo ključnu riječ 'IN' to jeste da nam iz tabele vrsta vozila izlistaju
redove u kojima atribut 'naziv' ima vrijednost 'osobno vozilo' i 'kamion'.
'IN' operator omogućava da odredimo više vrijednosti u klauzili 'WHERE'.

Slika 18. Upit br.9


3.3.10. Upit broj 10

U ovom upitu koristimo tzv 'pseudonime' koji se koriste za privremeno ime tabeli ili koloni u
tabeli. Često se koriste kako bi imena kolona učinili čitljivijima. Pseudonimi postoje samo za
vrijeme trajanja tog upita. Stvara se pomoću ključne riječi 'AS'.

Slika 19. Upit br.10


4. ZAKLJUČAK

I na kraju, završena je jedna od jednostavnijih baza podataka voznog parka. U ovom dijelu
potrudila sam se što bolje shvatiti i objasniti sve ono što sam radila kroz kompletnu bazu
podataka. Za dobru aplikaciju osnova je kvalitetna baza podataka. Ova baza podataka imala
bih još dosta dorade, dodatnih tabela i mnogih ključnih stvari kako bi se sa njom mogla
povezati neka ozbiljnija aplikacija.
5. LITERATURA

1. Suradnici Wikipedie, „SQL“, Wikipedia, The Free Encyclopedia,


www.en.wikipedia.org/wiki/sql,[05.06.2021.]
2. „MySQL Workbench“, Wikipedia, The Free Encyclopedia,
www.en.wikipedia.org/wiki/MySQL_Workbench

POPIS SLIKA:

Slika 1. Početna forma MySQL Workbench-a..........................................................................4


Slika 2. Tabela 'marka_vozila'...................................................................................................5
Slika 3. Tabela 'vrsta_vozila'......................................................................................................6
Slika 4. Tabela 'o_vozilu'...........................................................................................................7
Slika 5. Tabela 'vozila'...............................................................................................................8
Slika 6. Tabela 'odrzavanja'........................................................................................................8
Slika 7. Tabela ‘vozac1’.............................................................................................................9
Slika 8. Tabela ‘voznja1’.........................................................................................................10
Slika 9. Upis podataka..............................................................................................................10
Slika 10. Upit br.1....................................................................................................................11
Slika 11. Upit br.2....................................................................................................................12
Slika 12. Upit br.3....................................................................................................................12
Slika 13. Upit br.4....................................................................................................................13
Slika 14. Upit br.5....................................................................................................................13
Slika 15. Upit br.6....................................................................................................................14
Slika 16. Upit br.7....................................................................................................................14
Slika 17. Upit br.8....................................................................................................................14
Slika 18. Upit br.9....................................................................................................................15
Slika 19. Upit br.10..................................................................................................................15

You might also like