SQL-komennot: DQL, DDL, DML, DCL ja TCL esimerkkeineen
⚡ Älykäs yhteenveto
SQL-komennot on ryhmitelty viiteen relaatiotietokantaa hallinnoivaan alikieleen. DDL määrittelee rakenteen, DML muuttaa tietoja, DCL hallitsee käyttöoikeuksia, TCL hallitsee tapahtumia ja DQL hakee tietoja, joilla kullakin on omat lause- ja syntaksinsa.
Mikä on SQL?
SQL on tietokantakieli, joka on suunniteltu tietojen hakemiseen ja hallintaan relaatiotietokannassa.
SQL on tietokannan hallinnan vakiokieli. Kaikki RDBMS-järjestelmät pitävät MySQL, MS Access, OracleSybase, Postgres ja SQL Server käyttävät SQL:ää vakiotietokantakielenään. SQL-ohjelmointikieli käyttää erilaisia komentoja eri toimintoihin. Opimme SQL:n DCL-, TCL-, DQL-, DDL- ja DML-komennoista esimerkkien avulla.
Miksi käyttää SQL:ää?
Tässä on tärkeitä syitä SQL:n käyttöön:
- Se auttaa käyttäjiä pääsemään käsiksi tietoihin RDBMS-järjestelmä.
- Se auttaa sinua kuvailemaan dataa.
- Sen avulla voit määrittää tietokannan tiedot ja käsitellä kyseisiä tietoja.
- SQL-komentojen avulla voit luoda ja poistaa tietokantoja ja taulukoita.
- SQL:n avulla voit käyttää funktioita tietokannassa sekä luoda näkymiä ja tallennettuja proseduureja.
- Voit määrittää käyttöoikeuksia taulukoille, menettelyille ja näkymille.
SQL:n lyhyt historia
Tässä on tärkeitä maamerkkejä ajalta SQL:n historiasta:
- 1970 – Tohtori Edgar F. "Ted" Codd kuvaili tietokantojen relaatiomallia.
- 1974 – Structured Query Language ilmestyi, alun perin nimeltään SEQUEL osoitteessa IBM.
- 1979 - Oracle julkaisi ensimmäisen kaupallisesti saatavilla olevan SQL-pohjaisen tietokannan, joka perustui IBMn System R -tutkimusprototyyppi.
- 1986 – ANSI julkaisi ensimmäisen SQL-standardin, SQL-86:n.
- 1989 – SQL-89 saapui standardin ensimmäisenä versiona.
- 1992 – SQL-92:sta (SQL2) tuli tärkein perusohjelmointikieli, johon useimmat tietokannat edelleen viittaavat.
- 1999 – SQL:1999 (SQL3) julkaistiin ominaisuuksilla, kuten liipaisimet, rekursiiviset kyselyt ja oliopohjaisuus.
- 2003 – SQL:2003 lisäsi ikkunafunktioita, sekvenssigeneraattoreita ja XML:ään liittyviä ominaisuuksia.
- 2006 – SQL:2006 lisäsi tuen XML-kyselykielelle (XQuery).
- 2008 – SQL:2008 esitteli TRUNCATE-lausekkeen ja INSTEAD OF -liipaisimet.
- 2011 – SQL:2011 paransi tukea ajallisille tietokannoille.
- 2016 – SQL:2016 lisäsi JSON-tuen ja rivikuvioiden täsmäytyksen (MATCH_RECOGNIZE).
- 2019 – SQL/MDA (osa 15) lisäsi standardiin moniulotteisen taulukon tuen.
- 2023 – SQL:2023 lisäsi natiivin JSON-tietotyypin ja ominaisuusgraafikyselyt (SQL/PGQ).
- 2024 – GQL, ensimmäinen uusi ISO-tietokantakieli SQL:n jälkeen, julkaistiin graafikyselyiden kumppanistandardina.
- 2026 – SQL:2023 on edelleen nykyinen standardi, ja seuraavaa versiota kehitetään parhaillaan ISO/IEC:ssä.
SQL-komentojen tyypit
Tässä on viisi laajalti käytettyä SQL-komentotyyppiä:
- Data Definition Language (DDL)
- Data Manipulation Language (DML)
- Data Control Language (DCL)
- Transaction Control Language (TCL)
- Tietokyselykieli (DQL)

Alla oleva taulukko tiivistää viisi luokkaa ennen kuin kutakin käsitellään yksityiskohtaisesti.
| Luokka | Tarkoitus | Pääkomennot |
|---|---|---|
| DDL | Määrittele rakenne | LUO, PUDOTA, MUUTA, LYHENNY |
| DML | Muokkaa tietoja | LISÄÄ, PÄIVITÄ, POISTA |
| DCL | Hallitse pääsyä | MYÖNTÄÄ, PERUUTTAA |
| TCL | Hallinnoi tapahtumia | VAHVISTUS, PERUUTUS, TALLENNUSPISTE |
| DQL | Hae tiedot | VALITSE |
Mikä on DDL?
Data Definition Language auttaa sinua määrittelemään tietokannan rakenteen tai skeeman. Tutustutaanpa DDL-komentoihin ja niiden syntaksiin. SQL:n tärkeimmät DDL-komennot ovat CREATE, DROP, ALTER ja TRUNCATE.
LUODA
CREATE-lausetta käytetään tietokannan rakenteen tai skeeman määrittämiseen:
Syntaksi:
CREATE TABLE TABLE_NAME (COLUMN_NAME DATATYPES[,....]);
Esimerkiksi:
Create database university; Create table students; Create view for_students;
DROP
DROP-komento poistaa taulukoita ja tietokantoja RDBMS:stä.
Syntaksi:
DROP TABLE ;
Esimerkiksi:
Drop object_type object_name; Drop database university; Drop table student;
MUUTTAA
ALTER-komennolla voit muuttaa tietokannan rakennetta.
Syntaksi: lisätäksesi uuden sarakkeen taulukkoon:
ALTER TABLE table_name ADD column_name COLUMN-definition;
Taulukon olemassa olevan sarakkeen muokkaaminen:
ALTER TABLE MODIFY(COLUMN DEFINITION....);
Esimerkiksi:
Alter table guru99 add subject varchar;
KATKAISTA
Tätä komentoa käytetään poistamaan kaikki rivit taulukosta ja vapauttamaan taulukon sisältävä tila.
Syntaksi:
TRUNCATE TABLE table_name;
Esimerkiksi:
TRUNCATE table students;
Mikä on tiedonkäsittelykieli?
Data Manipulation Language (DML) mahdollistaa tietokannan instanssin muokkaamisen lisäämällä, muokkaamalla ja poistamalla sen tietoja. Se vastaa kaikenlaisten tietojen muokkaamisesta tietokannassa. Tärkeimmät DML-komennot SQL:ssä ovat:
- INSERT
- PÄIVITYS
- POISTA
INSERT
Tätä lausetta käytetään tietojen lisäämiseen taulukon riveille.
Syntaksi:
INSERT INTO TABLE_NAME (col1, col2, col3,.... col N) VALUES (value1, value2, value3, .... valueN); Or INSERT INTO TABLE_NAME VALUES (value1, value2, value3, .... valueN);
Esimerkiksi:
INSERT INTO students (RollNo, FIrstName, LastName) VALUES ('60', 'Tom', Erichsen');
PÄIVITYS
Tätä komentoa käytetään taulukon sarakkeen arvon päivittämiseen tai muokkaamiseen.
Syntaksi:
UPDATE table_name SET [column_name1= value1,...column_nameN = valueN] [WHERE CONDITION]
Esimerkiksi:
UPDATE students SET FirstName = 'Jhon', LastName= 'Wick' WHERE StudID = 3;
POISTA
Tätä komentoa käytetään yhden tai useamman rivin poistamiseen taulukosta.
Syntaksi:
DELETE FROM table_name [WHERE condition];
Esimerkiksi:
DELETE FROM students WHERE FirstName = 'Jhon';
Mikä on DCL?
DCL (Data Control Language) sisältää komentoja, kuten GRANT ja REVOKE, jotka ovat hyödyllisiä oikeuksien ja lupien myöntämiseen. Muut komennot ohjaavat tietokantajärjestelmän parametreja.
Grant
Tätä komentoa käytetään antamaan käyttäjälle käyttöoikeudet tietokantaan.
Syntaksi:
GRANT SELECT, UPDATE ON MY_TABLE TO SOME_USER, ANOTHER_USER;
Esimerkiksi:
GRANT SELECT ON Users TO'Tom'@'localhost;
Revokei
Tämä komento on hyödyllinen käyttäjän oikeuksien takaisinottamiseen.
Syntaksi:
REVOKE privilege_nameON object_nameFROM {user_name |PUBLIC |role_name}
Esimerkiksi:
REVOKE SELECT, UPDATE ON student FROM BCA, MCA;
Mikä on TCL?
Transaktionhallintakielen eli TCL-komennot käsittelevät tietokannan sisällä olevia tapahtumia. Ne työskentelevät suoraan kohdassa kuvattujen tilojen kanssa. transaktioiden hallinta.
Commit
Tätä komentoa käytetään kaikkien tapahtumien tallentamiseen tietokantaan.
Syntaksi:
Commit;
Esimerkiksi:
DELETE FROM Students WHERE RollNo =25; COMMIT;
Hintojen lasku
Rollback-komennolla voit kumota tapahtumia, joita ei ole vielä tallennettu tietokantaan.
Syntaksi:
ROLLBACK;
Esimerkiksi:
DELETE FROM Students WHERE RollNo =25;
SAVEPOINT
Tämän komennon avulla voit asettaa tallennuspisteen tapahtuman sisällä.
Syntaksi:
SAVEPOINT SAVEPOINT_NAME;
Esimerkiksi:
SAVEPOINT RollNo;
Mikä on DQL?
Data Query Language (DQL) -kieltä käytetään tietojen hakemiseen tietokannasta. Se käyttää vain yhtä komentoa, SELECT.
VALITSE
Tämä komento auttaa sinua valitsemaan määritteet WHERE-lausekkeen kuvaaman ehdon perusteella.
Syntaksi:
SELECT expressions FROM TABLES WHERE conditions;
Esimerkiksi:
SELECT FirstName FROM Student WHERE RollNo > 15;
POISTA vs. LYHENNETTY vs. PUDOTA
Nämä kolme komentoa poistavat kaikki tietoja, mutta ne eroavat toisistaan siinä, mitä ne poistavat ja voidaanko toiminto peruuttaa. Niiden sekoittaminen on yleinen aloittelijoiden virhe.
| Aspect | POISTA | KATKAISTA | DROP |
|---|---|---|---|
| Luokka | DML | DDL | DDL |
| Poistaa | Valitut rivit | Kaikki rivit | Koko pöytä |
| WHERE-lauseke | Sallittu | Ei sallittu | Ei sovellettavissa |
| Hintojen lasku | mahdollinen | Yleensä ei | Ei mahdollista |
| Rakenne säilytetty | Kyllä | Kyllä | Ei |
Lyhyesti sanottuna, käytä DELETE-komentoa poistaaksesi tiettyjä rivejä, TRUNCATE-komentoa tyhjentääksesi taulukon nopeasti ja DROP-komentoa hylätäksesi taulukon kokonaan.

