U trendu

SQL – Manipulacija podacima

Do sada smo, u SQL prilozima, obradili kreiranje baza podataka i tabela, i načine selekcija podataka, a nismo se bavili unosom podataka u tabele i njihovom izmenom. Za manipulaciju podacima unutar tabela baze podatka, u SQL-u koriste se sledeće tri instrukcije:

  • naredba INSERT
  • naredba UPDATE
  • naredba DELETE
Ako ste do sada koristili neki od Windows sistema, kao npr. MS Access ili MS FoxPro, videli ste da su operacije unosa, izmena i brisanja potpuno automatizovane, i da vam za ove operacije nije bilo potrebno znanje SQL jezika. Iza ovakvih sistema stoje upravo ove tri SQL naredbe koje smo naveli.

Sintaksa naredbe INSERT je sledeća:


INSERT INTO naziv_tabele
(polje1, polje2, polje3…)
VALUES (vrednost1, vrednost2, vrednost3…);

Ovom naredbom dodajemo podatak – slog (record), i to u odgovarajuća, prethodno navedena polja (polje1…). Pri korišćenju ove naredbe morate voditi računa o tome da tip podataka koji se unosi u tabelu, mora da odgovara tipu podataka polja i da ne sme da pređe njegovu deklarisanu dužinu. Redosled vrednosti koje se upisuju u jedan slog, mora da odgovara redosledu navedenih polja. U sledećem primeru videćemo kako se u, već nama poznatu, tabelu „Radnik“ unosi jedan slog:


INSERT INTO Radnik
(Ime, Prezime, MBR, Sektor)
VALUES (Milan, Maric, 3260, Analiza);

Sledeća instrukcija je – UPDATE, a ona nam služi za promenu vrednosti postojećih podataka u tabeli. Sintaksa ove instrukcije je sledeća:


UPDATE naziv_tabele
SET polje1 = vrednost1,
polje2 = vrednost2,

WHERE uslov;

U naredbi se prvo navodi tabela u kojoj će se menjati podaci, a zatim i lista polja za izmenu (sa odgovarajućim novim vrednostima). Na kraju instrukcije možemo da definišemo uslov, tj. da uslovom odredimo kod kojih slogova će se izvršiti izmena. Na primer, imamo tabelu „Radnik“ i jedno od polja označava sektor u kome radnici rade. Sledećom instrukcijom izmenićemo svim radnicima koji su radili u sektoru „Analiza“, vrednost ovog polja u „Plan i analiza“. Naredba će biti:


UPDATE Radnik
SET Sektor = ‘Plan i analiza’
WHERE Sektor = ‘Analiza’;

Ukoliko ne navedemo ni jedan uslov, promena će se primeniti na sve slogove tabele.

I na kraju, imamo naredbu DELETE, kojom brišemo podatke iz tabela. Sintaksa ove instrukcije je sledeća:


DELETE FROM naziv_tabele
WHERE uslov;

Sa ovom naredbom treba paziti, jer u trenutku možete izgubiti dosta podataka. Na svu sreću mnogi sistemi za upravljanje bazama podataka podržavaju tzv. transakcije, kojima između ostalog možemo i oporaviti obrisane podatke. U zavisnosti od deklarisanog uslova, naredbom DELETE možemo brisati: samo jedan slog, više slogova odjednom i sve slogove odjednom. U sledećem primeru, obrisaćemo slog koji smo dodali pri objašnjavanju naredbe Insert (podaci o radniku Mariću):


DELETE FROM Radnik
WHERE MBR = 3260;

Pratite Krstaricu i preko mobilne aplikacije za Android i iPhone.