Šta je MySQL? | Šta je SQL?

Šta je MySQL?  Šta je SQL? Baze podataka
Nazad na ostale članke

Šta je MySQL, a šta SQL i za čega služe?

U ovom članku ćemo se baviti bazama podataka, njihovom definicijom i svrhom i odgovoriti na pitanje šta su pojmovi iz naslova. Dakle, šta je MySQL i šta je SQL? Svaki veb sajt ili veb aplikacija prezentuje ili obrađuje neke podatke, kojima korisnici pristupaju i iste koriste u njima potrebne svrhe. Verovatno možemo reći da onda skup nekih podataka predstavlja neku informaciju koja moće da se iskoristi, kao što recimo podatak o ulici, broju i gradu neke firme predstavlja skup podataka tj. informaciju o lokaciji firme koju koristimo da bismo tu firmu pronašli.

Ovo je jednostavan primer, ali ti skupovi podataka mogu biti dosta veći, kao recimo, podaci za nekog korisnika koji se registrovao na neki veb sajt ili podaci nekog studenta, u koje može da ulazi ime, prezime, adresa, datum rođenja, pa zatim sve njegove ocene tokom studija i drugo.

Pa da krenemo iz početka, što bi se reklo.

Da bi se svi ovi podaci mogli smisleno i uredno prezentovati ili efikasno obraditi potrebno je da ih negde skladištimo. U ovu svrhu nam služe baze podataka.

Šta je baza podataka?

Baza podataka predstavlja kolekciju podataka organizovanih tako da se podacima može lako pristupiti i manipulisati. Uopšteno baze podataka bi se mogle podeliti prema tipu podataka koje sadrže, kao recimo, tekstualne, numeričke ili baze nekih drugih tipova podataka.

Međutim, komjuterske baze podataka se najčešće klasifikuju u zavisnosti od njihovog organizacionog pristupa. Organizacioni pristup se drugačije naziva model baze podataka. Model baze podataka određuje njenu logičku strukturu , način na koji su podaci skladišteni i organizovani i način na koji se njima manipuliše.

Da bi se lakše upravljalo bazama podata postoje sistemi za upravljanje bazama podataka. Možemo ih podeliti grubo u dve grupe:

1. Relacioni model
2.Nerelacioni model

Mi ćemo se ovde skoncentrisati na Relacioni model baze podataka. I na kraju dolazimo do odgovora šta je MySQL?

Šta je MySQL?

MySql logo

MySQL je sistem za upravljanje relacionim bazama podata (eng.RDBMS - Relational Database Management System). Relacioni model podrazumeva da su podaci organizovani u formi rednih lista tj. tabela sa kolonama i redovima, a grupisani su relacijama. Ove tabele možemo da zamislimo kao tabele u MS Excel-u. Relacija je veza između dve tabele srodnih podataka.

MySQL je u suštini specijalno dizajnirana softverska aplikacija koja omogućava interakciju korisnika ili drugih aplikacija, sa jedne strane, i same baze podataka sa druge strane. Drugim rečima omogućava definisanje, kreiranje, pretragu, ažuriranje tj. administraciju jedne baze podataka. MySQL je jedan od najkorišćenijih sistema za upravljanje relacionim bazama podata, a pored njega tu su i SQLite i PostgreSQL. MySQL je "open source" projekat tj. projekat otvorenog koda, a naziv je dobio po imenu ćerke koautora Michael Widenius-a i SQL-a. Prva verzija MySQL-a se pojavila 1995. godine, a tranutna je 5.7.21 od januara 2018 godine. MySQL ima podršku u svim poznatijim programskim jezicima, pa tako i odličnu podršku u PHP jeziku, kao najkorišćenijem serverskom programskom jeziku. Primećujemo da se u nazivima baza podataka uvek provlači SQL. Dolazimo do pitanja šta je SQL?

Šta je SQL?

SQL je akronim od Engleskih reči "Structured Query Language", što bi u prevodu značilo strukturalni upitni jezik. Dakle, SQL je upitni jezik koji koristimo za izdavanje komandi za manipulaciju podacima baze podataka, kao i za kompletno njeno kreiranje, izmenu ili brisanje, kako same baze, njenih tabela, tako i podataka koji se nalaze u bazi podataka.

SQL je jedan od prvih komercijalnih jezika Edgar F. Codd-ovog relacionog modela. SQL je standardizovan 1986. godine, pa slede dopune standarda 1989. i 1999., ali i pored toga nije u potpunosti prenosiv između različitih sistema za upravljanje relacionim bazama podataka. Ovo znači da njegova sintaksa nije usklađena i kompatibilna između različitih sistema. Tako da se SQL sintaksa delimično razlikuje kod MySQL-a i na primer SQLite-a.

Primer SQL koda:


SELECT * FROM `users` WHERE `country` = `Srbija`;
INSERT INTO `users` VALUES('Petar', 'Petrović', '021-111-222', 'petar@sbb.rs', 'Srbija');
UPDATE `users` SET `phone`=`021-444-555` WHERE `id`=1;
DELETE FROM `users` WHERE `id`=1;


Šta znači ovaj kod?

Kao što vidite iz gornjeg primera SQL jezik je lako čitljiv, nema nikakve komplikovane sintakse. I onaj ko prvi put vidi SQL kod može bez problema da shvati šta on radi. Ipak ćemo pojasniti svaki primer.

Prva linija, koja počinje SELECT naredbom selektuje sve podatke, što označava "*", iz tabele `users`, u kojoj kolona `country` ima vrednost `Srbija`. Dakle, skoro, pa kao po Vuku. :)

Druga linija, koja počinje INSERT naredbom, snima u tabelu `users` podatke sa sledećim vrednostima ('Petar', 'Petrović', '021-111-222', 'petar@sbb.rs', 'Srbija'). Podaci se unose redosledom koji je isti kao i redosled kolona u tabeli. U ovom slučaju tabela bi imala nazive kolona Ime, Prezime, Telefon, Mejl, Država.

Treća linija, koja počinje sa naredbom UPDATE, ažurira kolonu `phone` u tabeli `users`, ali tamo gde je identifikacioni broj korisnika 1 i postavlja novu vrednost `021-444-555`;

Četvrta linija, koja počinje sa naredbom DELETE, briše korisnika sa identifikacionim brojem 1 iz tabele `users`.

Ukoliko želite da saznate nešto više evo i linkova W3CSchool sajta za MySQL i SQL.

Učestvujte u anketi: šta biste voleli da pišemo u našem blogu?

loading icon