Uvod u SQL
SQL je skraćenica za Structured Query Language i to je najpoznatiji računarski jezik koji se koristi pri izradi baza podataka, kao i pri manipulaciju podacima u bazi podataka. •Napravljen je po uzoru na relacijski 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 firma 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 vazduhoplovna firma u Ujedinjenom Kraljevstvu.
SQL je standardizovan preko standarda ANSI1 1986. godine i ISO2 1987. godine, te je postao referentni jezik za relacijske baze podataka.
SQL je lagan za upotrebu i ne zahtijeva veliko znanje korisnika. Glavna karakteristika mu je deklarativnost što znači da korisnik određuje što SQL treba napraviti, ali ne i kako doći do rezultata, te nema potrebe poznavati složene aktivnosti koje se događaju kad se unese SQL naredba. Iako je SQL standardizovan danas postoje male razlike u različitim DBMS-ovima koje možemo nazvati i „narječja“ u SQL jeziku. Gotovo svaki od poznatijih DBMS-a poput MySQL-a, Micosoft SQL Server-a, IBM-ova DB2, ima neke jedinstvene karakteristike poput sintakse i tipova podataka koje je poželjno proučiti prije njihove upotrebe. Osnovni tipovi podataka koje podržavaju svi DBMS-ovi su sljedeći:
- NUMBER – brojni tip podatka (cijeli, negativni, decimalni)
- INTEGER – cijeli brojevi
- CHAR – niz podataka fiksne dužine
- VARCHAR – niz podataka promjenljive dužine
- DATE/TIME – tip podatka koji označava datum/vrijeme
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