Transcript
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, mita4d@gmail.com);
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
top related