SQL naredbe: DML, DDL, DCL, TCL, DQL s primjerom upita
Što je SQL?
SQL je jezik baze podataka dizajniran za dohvaćanje i upravljanje podacima u relacijskoj bazi podataka.
SQL je standardni jezik za upravljanje bazom podataka. Svi RDBMS sustavi poput MySQL, MS Access, Oracle, Sybase, Postgres i SQL Server koriste SQL kao svoj standardni jezik baze podataka. Programski jezik SQL koristi različite naredbe za različite operacije. Na primjerima ćemo naučiti o sličnim DCL, TCL, DQL, DDL i DML naredbama u SQL-u.
Zašto koristiti SQL?
Ovdje su važni razlozi za korištenje SQL-a
- Pomaže korisnicima da pristupe podacima u RDBMS sustav.
- Pomaže vam da opišete podatke.
- Omogućuje vam da definirate podatke u bazi podataka i manipulirate tim specifičnim podacima.
- Uz pomoć SQL naredbi u DBMS-u možete kreirati i ispuštati baze podataka i tablice.
- SQL vam nudi korištenje funkcije u bazi podataka, stvaranje pogleda i pohranjene procedure.
- Možete postaviti dopuštenja za tablice, procedure i poglede.
Kratka povijest SQL-a
Ovdje su važne znamenitosti iz povijest SQL-a:
- 1970. – Dr. Edgar F. “Ted” Codd opisao je relacijski model za baze podataka.
- 1974. – Pojavio se Structured Query Language.
- 1978 - IBM izdao je proizvod pod nazivom System/R.
- 1986 - IBM razvio prototip relacijske baze podataka, koju je standardizirao ANSI.
- 1989. - Lansirana prva verzija SQL-a
- 1999. – Lansiran SQL 3 sa značajkama kao što su okidači, orijentacija na objekte itd.
- SQL2003- funkcije prozora, značajke povezane s XML-om itd.
- SQL2006- Podrška za XML Query Language
- SQL2011 poboljšana podrška za vremenske baze podataka
Vrste SQL-a
Evo pet tipova naširoko korištenih SQL upita.
- Jezik definicije podataka (DDL)
- Jezik za manipulaciju podacima (DML)
- Jezik kontrole podataka (DCL)
- Jezik kontrole transakcija (TCL)
- Jezik upita podataka (DQL)
Pogledajmo svaki od njih u detalje:
Što je DDL?
Data Definition Language pomaže vam da definirate strukturu ili shemu baze podataka. Naučimo o DDL naredbama sa sintaksom.
Pet vrsta DDL naredbi u SQL-u su:
STVORITI
Naredbe CREATE koriste se za definiranje sheme strukture baze podataka:
Sintaksa:
CREATE TABLE TABLE_NAME (COLUMN_NAME DATATYPES[,....]);
Na primjer:
Create database university; Create table students; Create view for_students;
KAP
Drops naredbe uklanjaju tablice i baze podataka iz RDBMS-a.
Sintaksa
DROP TABLE ;
Na primjer:
Drop object_type object_name; Drop database university; Drop table student;
IZMIJENI
Naredba Alters omogućuje promjenu strukture baze podataka.
Sintaksa:
Za dodavanje novog stupca u tablicu
ALTER TABLE table_name ADD column_name COLUMN-definition;
Da biste izmijenili postojeći stupac u tablici:
ALTER TABLE MODIFY(COLUMN DEFINITION....);
Na primjer:
Alter table guru99 add subject varchar;
SKRATITI
Ova se naredba koristi za brisanje svih redaka iz tablice i oslobađanje prostora koji sadrži tablicu.
Sintaksa:
TRUNCATE TABLE table_name;
Primjer:
TRUNCATE table students;
Što je jezik za manipulaciju podacima?
Data Manipulation Language (DML) omogućuje izmjenu instance baze podataka umetanjem, mijenjanjem i brisanjem njezinih podataka. Odgovoran je za izvođenje svih vrsta izmjena podataka u bazi podataka.
Postoje tri osnovne konstrukcije koje programu baze podataka i korisniku omogućuju unos podataka i informacija su:
Evo nekoliko važnih DML naredbi u SQL-u:
- INSERT
- UPDATE
- DELETE
INSERT
Ovo je izjava SQL upit. Ova se naredba koristi za umetanje podataka u redak tablice.
Sintaksa:
INSERT INTO TABLE_NAME (col1, col2, col3,.... col N) VALUES (value1, value2, value3, .... valueN); Or INSERT INTO TABLE_NAME VALUES (value1, value2, value3, .... valueN);
Na primjer:
INSERT INTO students (RollNo, FIrstName, LastName) VALUES ('60', 'Tom', Erichsen');
UPDATE
Ova se naredba koristi za ažuriranje ili izmjenu vrijednosti stupca u tablici.
Sintaksa:
UPDATE table_name SET [column_name1= value1,...column_nameN = valueN] [WHERE CONDITION]
Na primjer:
UPDATE students SET FirstName = 'Jhon', LastName= 'Wick' WHERE StudID = 3;
DELETE
Ova se naredba koristi za uklanjanje jednog ili više redaka iz tablice.
Sintaksa:
DELETE FROM table_name [WHERE condition];
Na primjer:
DELETE FROM students WHERE FirstName = 'Jhon';
Što je DCL?
DCL (Data Control Language) uključuje naredbe poput GRANT i REVOKE, koje su korisne za davanje "prava i dopuštenja". Ostale dozvole kontroliraju parametre sustava baze podataka.
Primjeri DCL naredbi
Naredbe koje dolaze pod DCL:
- Grant
- Revoke
Grant
Ova se naredba koristi za davanje privilegija korisničkog pristupa bazi podataka.
Sintaksa:
GRANT SELECT, UPDATE ON MY_TABLE TO SOME_USER, ANOTHER_USER;
Na primjer:
GRANT SELECT ON Users TO'Tom'@'localhost;
Revoke
Korisno je podržati dopuštenja od korisnika.
Sintaksa:
REVOKE privilege_nameON object_nameFROM {user_name |PUBLIC |role_name}
Na primjer:
REVOKE SELECT, UPDATE ON student FROM BCA, MCA;
Što je TCL?
Jezik kontrole transakcija ili TCL naredbe bave se transakcijama unutar baze podataka.
počiniti
Ova se naredba koristi za spremanje svih transakcija u bazu podataka.
Sintaksa:
Commit;
Na primjer:
DELETE FROM Students WHERE RollNo =25; COMMIT;
povrat na staro
Naredba Rollback omogućuje poništavanje transakcija koje još nisu spremljene u bazu podataka.
Sintaksa:
ROLLBACK;
Primjer:
DELETE FROM Students WHERE RollNo =25;
TOČKA SPREME
Ova naredba vam pomaže da postavite točku spremanja unutar transakcije.
Sintaksa:
SAVEPOINT SAVEPOINT_NAME;
Primjer:
SAVEPOINT RollNo;
Što je DQL?
Data Query Language (DQL) koristi se za dohvaćanje podataka iz baze podataka. Koristi samo jednu naredbu:
SELECT
Ova naredba vam pomaže odabrati atribut na temelju uvjeta opisanog WHERE klauzulom.
Sintaksa:
SELECT expressions FROM TABLES WHERE conditions;
Na primjer:
SELECT FirstName FROM Student WHERE RollNo > 15;
rezime
- SQL je jezik baze podataka dizajniran za dohvaćanje i upravljanje podacima u relacijskoj bazi podataka.
- Pomaže korisnicima pristup podacima u RDBMS sustavu
- Godine 1974. pojavio se pojam Structured Query Language
- Pet vrsta SQL upita su 1) Data Definition Language (DDL) 2) Data Manipulation Language (DML) 3) Data Control Language (DCL) 4) Transaction Control Language (TCL) i 5) Data Query Language (DQL)
- Data Definition Language (DDL) vam pomaže da definirate strukturu ili shemu baze podataka.
- Data Manipulation Language (DML) omogućuje izmjenu instance baze podataka umetanjem, mijenjanjem i brisanjem njezinih podataka.
- DCL (Data Control Language) uključuje naredbe poput GRANT i REVOKE, koje su korisne za davanje "prava i dopuštenja".
- Jezik kontrole transakcija ili TCL naredbe bave se transakcijama unutar baze podataka.
- Data Query Language (DQL) koristi se za dohvaćanje podataka iz baza podataka.