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)
Vrste SQL-a
Vrste SQL-a

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.

Saลพmite ovu objavu uz: