16
V I S O K A T E H N I Č K A Š K O L A N I Š Seminarski rad MySQL Predmet: Napredne Internet i Web tehnologije Mentor: Student: mr Veličković Zoran Kostić Dimitrije

MySQL Kostic Dimitrije

Embed Size (px)

Citation preview

7/31/2019 MySQL Kostic Dimitrije

http://slidepdf.com/reader/full/mysql-kostic-dimitrije 1/16

V I S O K A T E H N I Č K A Š K O L A

N I Š

Seminarski rad

MySQL

Predmet: Napredne Internet i Web tehnologije

Mentor: Student:

mr Veličković Zoran Kostić Dimitrije

7/31/2019 MySQL Kostic Dimitrije

http://slidepdf.com/reader/full/mysql-kostic-dimitrije 2/16

RTs 5/10

Sadržaj

1. Uvod…………………………………………………………………………………….. 3

2. Osnovne naredbe MySQL-a...........……………………………………………………… 4

3. Kreiranje baze podataka pomoću MySQL console.......…………………………………. 6

4. Windows alati za rad sa MySQL-om.....................................…………………………… 10

5. Zaključak............................................................................................................................ 15

6. Literatura………………………………………………………………………………… 16

2

7/31/2019 MySQL Kostic Dimitrije

http://slidepdf.com/reader/full/mysql-kostic-dimitrije 3/16

1. Uvod

MySQL je sistem za upravljanje SQL bazama podataka. Baza podataka je strukturno

 povezan skup podataka. BP može biti bilo šta od obične liste za kupovinu preko popisa slika

umetničke galerije pa sve do goleme količine podataka u korporacijskim mrežama. Za

dodavanje, pristupanje i obrađivanje podataka u BP potreban je sistem za upravljanje bazama

 podataka kao što je MySQL. Budući da se kompjuteri odlično snalaze pri obradi velikih

količina podataka, sistemi za upravljanje bazama podataka igraju centralnu ulogu u

računarstvu, kao samostalni alati ili kao deo drugih aplikacija.

MySQL se dobro snalazi i sa relacijskim bazama podataka. Relacijska baza podataka je baza podataka koja podatke pohranjuje u odvojene tabele umesto u jednu tabelu. Ovo

omogućuje brži i fleksibilniji rad sa bazama podataka. Tabele su povezane definisanim

relacijama što omogućuje kombinovanje podataka iz nekoliko tabela u slučaju da postoji zahtev

za to. Reč SQL u MySQL znači "Structured Query Language" (strukturni jezik za

 pretraživanje) – najčešći standardizovan jezik za pristupanje bazama podataka.

MySQL je open-source proizvod, što znači da je dozvoljeno svakome da ga koristi i

 prilagođava za svoje potrebe. Svakome je omogućen download MySQL sa Interneta ikorišćenje bez obveze plaćanja. MySQL spada pod GLP (GNU General Public License).

Takođe postoji MySQL Enterprise verzija programa koja nije besplatna i koja nudi dodatne

opcije naprednim korisnicima.

Razlog zbog kog koristimo MySQL jer je brz, pouzdan i lagan za korišćenje. Takođe

ima vrlo praktične dodatne opcije razvijene u bliskoj saradnji sa korisnicima. MySQL je

originalno razvijan za manipulaciju vrlo velikih baza podataka, mnogo je brži od postojećih

rešenja i uspešno se koristi u visoko zahtevnim okruženjima. Pristupačnost, brzina i sigurnost

čine MySQL vrlo pogodnim za pristupanje bazama podataka preko Interneta.

MySQL softver se sastoji od MySQL server-a, nekoliko dodatnih utility programa koji

služe za olakšavanje administracije BP, takođe dolaze i dodatni programi koji su potrebni za

rad servera. Srce sistema naravno čini MySQL server, on je ustvari “menadžer” sistema BP.

Kroz njega prolaze sve instrukcije korisnika koje vrše upravljanje nad bazom podataka. Na

 primer ako korisnik želi da napravi novu BP poslaće MySQL serveru sledeću poruku “create a

new database and call it newdata”. MySQL server će tada u svom folderu napraviti podfolder 

koji će nositi naziv “newdata”. Ako tu novu bazu želite još da proširite, vođeni prethodnim

3

7/31/2019 MySQL Kostic Dimitrije

http://slidepdf.com/reader/full/mysql-kostic-dimitrije 4/16

 primerom, poslaćete novu poruku odnosno komandu MySQL serveru sa tačnim odredištima

gde želite da se podaci dodaju. Ali pre nego što možemo da komuniciramo sa serverom

moramo da pokrenemo isti i da proverimo da li je podešen da očekuje zahteve. U većini

slučajeva MySQL server se pokreće zajedno sa računarom i radi neprestano. Ovakav režim

rada je tipičan za Web sajtove. Naravno nije obavezno da se server pokreće sa uključivanjem

računara uvek postoji mogućnost manuelnog uključivanja kada želite da pristupite vašoj bazi

 podataka. Kada je pokrenut MySQL server konstantno očekuje poruke koje su upućene njemu.

2. Osnovne naredbe MySQL-a

Baza podataka je objekat koji sadrži tabele i druge objekte radi čuvanja i obrade

 podataka. PHP ima ugrađene funkcije za rad sa nekoliko najpopularnijih sistema za upravljanje

 bazama podataka: DB2, FrontBase, Informix, InterBase, mSQL, MS SQL Server, MySQL,

Oracle, ODBC, PostgreSQL i Sybase. MySQL je višekorisnički DBMS koji se može besplatno

 preuzeti a dostupanje i za Windows i za Unix platforme[2].

Osnovne komande koje moramo znati kako bi bar na osnovnom nivou su Create, Read, Update

i Delete.

Kreiranje baze podataka vrši se komandom:

CREATE DATABASE = imeBaze;

Samo kreiranje baze ne znači da je odmah i koristite pa se moramo prvo spojiti na bazu

 podataka naredbom:

USE Database ili CONNECT

 Nakon što kreirate bazu podataka, moraćete da kreirate tabele u kojoj ćete vršiti

skladištenje podataka. Sintaksa za kreiranje tabela je SQL CREATE TABLE

CREATE TABLE <ime tabele>

Da bi bila korisna vaša tabela mora sadržati podatke. Ubacivanje podataka u tabelu

vršimo SQL komandom INSERT.

INSERT INTO tabela (kolona1, kolona2, kolona3)

VALUES (vrednost1, vrednost2, vrednost3);

Da se vratimo sada na Create tj. kad kreiramo unos u bazu podataka. Ovim kodom u

 bazu podataka upisujemo entry (record). Gore navedeni kod bi značio u tabelu (ime tabele)

koja ima kolone (kolona1, kolona2, kolona3) upisujemo vrednosti (vrednos1, vrednost2,

vrednost3).

4

7/31/2019 MySQL Kostic Dimitrije

http://slidepdf.com/reader/full/mysql-kostic-dimitrije 5/16

Sledeće, da bi koristili ovu tabelu, možemo napraviti upit nad formom kojim će nam

relaciona baza dati odgovor:

SELECT * FROM tabela

WHERE kolona1 = ’neki_tekst’ 

ORDER BY kolona1, kolona2 ASC;

 

Kao što se vidi iz gornjeg koda, SQL komande se pišu velikim slovima. Gore navedeni

kod vrši čitanje iz baze podataka. * znači “sve” odnosno u ovom kontekstu “označi sve”.

Ustvari gore navedeni kod znači: Označi sve iz tabele (ime tabele), gde je u koloni 1

“neki_tekst”, i sortiraj po abecednom redu od A prema Z.

Ako želimo da ažuriramo određeni unos (record) koji se već nalazi u bazi podatakakoristimo sledeći kod:

UPDATE tabela

SET kolona1 = ’neki_tekst’ 

WHERE id = 1;

Ovaj kod bi značio: Ažuriraj unos u tabeli (ime tabele), postavljajuci vrednost u koloni1

“neki_tekst” ali samo u unosu (record-u) koji ima id=1. I na kraju imamo brisanje recorda

odnosnno entry-ja iz tabele.

DELETE FROM tabela

WHERE id=1;

Ovim kodom brišemo unos iz tabele tj. baze podataka.

5

7/31/2019 MySQL Kostic Dimitrije

http://slidepdf.com/reader/full/mysql-kostic-dimitrije 6/16

3. Kreiranje baze podataka pomoću MySQL console

Da bi kreirali bazu u MySQL-u potrebno nam je da imamo instaliran MySQL na

računaru. Bilo to bio serverski računar pa njemu pristupali sa udaljene lokacije ili je to naš

lokalni računar. U našem slučaju koristili smo aplikaciju WAMP server. Ova aplikacija na

našem lokalnom racunaru podiže Apache server koji nam služi za prezentovanje Web strana,

PHP server koji izvršava php skripte i MySQL pomoću koga kreiramo baze podataka.

Da bi koristili MySQL moramo pokrenuti konzolu to radimo na nacin prikazan kao na slici 1.

Slika 1. Pokretanje MySQL console

Po ulasku u MySQL prompt MySQL nam prvo traži password. Svaki korisnik MySQL-

a ima svoju lozinku. Po ukucavanju lozinke dozvoljava se pristup bazama podataka.

Slika 2. Izgled konzole

6

7/31/2019 MySQL Kostic Dimitrije

http://slidepdf.com/reader/full/mysql-kostic-dimitrije 7/16

Kao sto vidimo komandom

SHOW DATABASES;

Izlistavamo sve baze podataka koje smo kreirali do sada, a ako hocemo da kreiramo novu bazu

koristimo naredbu

CREATA DATABASE specijalisticke_SRT;

Medjutim jos uvek nemamo mogucnost kreiranja tabela i i unosa bilo kakvih podataka.

Da bi mogli da bilo sta kreiramo moramo specificirati koju bazu podataka ce mo koristiti a to

radimo komandom

USE specijalisticke_srt;

Sada mozemo da kreiramo prvu od tabela :

CREATE TABLE studenti (ime VARCHAR(20), prezime VARCHAR(25), pol CHAR(1),

godina_studija INT(4), smer VARCHAR(50), broj_indeksa INT(5),email VARCHAR(50));

Slika 3. Kreiranje Tabele

 Nakon sto smo kreirali tabelu dosao je red da u nju ubacimo podatke to radimo tako sto

ukucama prvo komantu INSERT INTO pa zatim polja u koja zelimo upis pa nakon toga

 podatke koje zelimo da upisemo u tabelu.

INSERT INTO specijalisticke_SRT (ime, prezime, pol, godina_studija,broj_ideksa , email)

VALUES (Dimitrije, Kostic, M, 4, 5, [email protected]);

7

7/31/2019 MySQL Kostic Dimitrije

http://slidepdf.com/reader/full/mysql-kostic-dimitrije 8/16

Sada kada smo uneli potrebne podake da bi imali uvid u to moramo koristiti SQL upit. Da bi

videli sve sto smo uneli u nasu tabelu studenti koristimo upit

SELECT * FROM studenti;

U ovom upitu nam karakter * oznacava da selektujemo sva polja iz baze koja ce mo prikazati, a

komandom From odabiramo tabelu koji zelimo da koristimo tj. iz koje ce mo procitati podatke.

Slika 4. Prikaz svih zapisa u tabeli

Pored ovakvog opsteg upita mozemo postaviti i neke mnogo slozenije upite koji prikazuju

 podatke iz vise tabela , ali posto mi u ovoj bazi imamo samo jednu tabelu evo pokazacemo

kako izgleda jedan specificniji upit. Zadacemo upit koji prikazuje Ime ,Prezime i email

studenta sa brojem indeksa 5.

8

7/31/2019 MySQL Kostic Dimitrije

http://slidepdf.com/reader/full/mysql-kostic-dimitrije 9/16

SELECT ime, prezime, email

FROM studenti

WHERE broj_indeksa=5;

Slika 5. Rezultat upita

Za izlazak iz MySQL konzole koristimo komandu quit.

Slika 6. Izlazak iz konzole

9

7/31/2019 MySQL Kostic Dimitrije

http://slidepdf.com/reader/full/mysql-kostic-dimitrije 10/16

4. Windows alati za rad sa MySQL-om

Osim rada u konzolnom modu, koji naviše podseća na rad u DOS-u, za rad sa MySQL-om

možemo koristiti i alternativne Windows programe.

4.1 Navicat for MySQL

Pored konzolnog rada sa MySQL bazom, postoje mnogi Windows alati koji se koriste

za olakšani rad. Navicat for MySQL je moćan program za administriranje servera baze

 podataka, kao i daljeg razvoja MySQL baze.

Radi sa bilo kojim verziji MySQL od 3.21 ili novije verzije i podržava većinu funkcija

uključujući i najnovije MySQL-Triger, uskladištene procedure, funkcije, događaje, pregled,

upravljanje korisnicima, i tako dalje.

Program Navicat for MySQL je idealna aplikacija za MySQL razvoj i administraciju.

Takođe, nije samo dovoljno sofisticiran za profesionalne programere, već je i

 jednostavan za učenje i za nove korisnike. Svojim dobro dizajniranim Grafičkim korisničkim

interfejsom (GUI), MySQL-Navicat vam omogućava brzo i lako kreiranje, organizaciju, pristupi deljenje informacija na siguran i jednostavan način.

 Navicat MySQL može povezati sa lokalnim serverom / MySQL-udaljenim serverima,

obezbeđuje nekoliko alata kao što su utilitarni Podaci / Struktura Sinhronizacija, uvoz / izvoz,

Backup i izveštaj da olakšaju proces održavanja podataka.

Evo nekih ključnih karakteristika "Navicat za MySQL":

• Kompatibilan sa svim verzija MySQL servera.• Podrška događaja (EVENT).

• Podrška aktiviranja (Triggers).

• Podrška uskladištenih procedura i funkcija.

• Podrška za preglede (Views).

• Podrška za Varchar podatke. Vrednost od 0 do 65.535 u 5.0.3 i kasnijim verzijama.

• Podrška Bit Tip podacima.

• Podrška Binary / VARBINARY tipu podataka.

10

7/31/2019 MySQL Kostic Dimitrije

http://slidepdf.com/reader/full/mysql-kostic-dimitrije 11/16

 Nakon instalacije Navicat for MySQL prvo sto nam je potrebno je da se upoznam sa

grafickim okruzenjem ovo aplikacije. Nakon upoznavanja sledece sto moramo da uradimo je da

uputimo program tj. napravimo konekciju sa MySQL serverom sa kojim zelimo da radimo.

Slika 7. Kreiranje konekcije sa MySQL serverom

 Nakon uspesnog uspostavljanja konekcije sa serverom pojavljuju nam se sa leve strane

sve do sada kreirane baze koje se nalaze na serveru.

Slika 8. Baze koje se nalaze na serveru

11

7/31/2019 MySQL Kostic Dimitrije

http://slidepdf.com/reader/full/mysql-kostic-dimitrije 12/16

Ukoliko ne zelimo da koristimo ni jednu od postojecih baza podataka vec zelimo da

kreiramo novu bazu to radimo tako sto na ime konekcije kliknemo desni klik da onda

izaberemo opciju New Database.

Slika 9. Kreiranje nove baze

Kreirajmo i neku tabelu u nasoj bazi. To radimo na isti nacn kao sto smo kreirali i bazu.

Slika 10 Kreiranje nove tabele

12

7/31/2019 MySQL Kostic Dimitrije

http://slidepdf.com/reader/full/mysql-kostic-dimitrije 13/16

Medjutim do sada jos uvek nema funcionalnu tabelu jer moramo oznaciri polja koja

zelimo da sadrzi tabela i da defininemo njihov tip , duzinu , da dozvolimo ili zabranimo da

ostanu prazna prilikom upisa poataka u tabelu.

Slika 11. Definisanje polja tebele

 Nakon sto smo u potpunosti kreirali tabelu sledece sto trebamo da uradimo jeste da

unesemo neki podatak u nju. Ovaj graficki interfejs nam i to omogucava da uradimo veoma

lako jednostavnim popunjavanjem polja za razliku od MySQL konzole ovaj nacim je mnogo

laksi.

13

7/31/2019 MySQL Kostic Dimitrije

http://slidepdf.com/reader/full/mysql-kostic-dimitrije 14/16

Slika 12. Upisivanje podataka u tabelu

Jos jedna veoma bitna i lepa stvar ove aplikacije jeste i Query designer koji pomocu

grafickog interfejsa nam omogucava da kreiramo SQL upit nad bazom i to na veoma

 jednostavan nacin.

Slika 13. Kreiranje upita

14

7/31/2019 MySQL Kostic Dimitrije

http://slidepdf.com/reader/full/mysql-kostic-dimitrije 15/16

5. Zakljucak 

Kao sto smo videli u ovom radu današnje informacione tehnologije se u velikoj meri

oslanjaju na baze podataka . Tačnije bilo bi nezamislivo i putpuno nepraktično koristiti bilo

kakav informacioni sistem koji se ne oslanja na neku bazu podataka. Šta više danas sve veći

 broj internet sajtova nemogu da funkcionišu bez baze podataka, jer to je ono sto svaku stranu

čini opširnom u ažuriranom na vreme. U sprezi sa PHP-om proširili smo mogućnosti Interneta

na mnogo viši nivo.

Kao sto smo videli u predhonom delu da bi kreirali neku bazu potrbno nam je da

 poznajemo osnove Structured Query Language i sve te te komande unesemo "ručno" tj. preko

MySQL console. Što priznaćete za neke ozbiljnije projekte nije nimalo jednostavno ni lako.

Zbog toga smo u drugom delu pokazali način na koji možemo prevazići rad u konzoli i da sve

to možemo odraditi preko GUI-a (Grafical User Interface) koji je mnogo pristupačniji običnom

korisniku.

15

7/31/2019 MySQL Kostic Dimitrije

http://slidepdf.com/reader/full/mysql-kostic-dimitrije 16/16

6. Literatura

[1] http://download.tutoriali.org/Tutorials/SQL/uvod_u_SQL.pdf (posećeno 5.3.2011)

[2] Praktikum labolatorijske vezbe Distribuirane baze podataka, Borivoje Milosevic, 2009

[3] http://www.tizag.com/mysqlTutorial (posećeno 5.3.2011)

[4] http://www.w3schools.com/sql/default.asp (posećeno 5.3.2011)

[5] Samra Mujačić "Programiranje za Internet", Universitet u Zenici, 2006

[6] http://www.bubaj.com/index.php?mysql (posećeno 5.3.2011)

[7] http://sr.wikipedia.org/sr/MySQL (posećeno 5.3.2011)

16