Šiam straipsniui ar jo daliai trūksta išnašų į patikimus šaltinius.
Jūs galite padėti Vikipedijai pridėdami tinkamas išnašas su šaltiniais.

SQL (angl. Structured Query Language „struktūrizuota užklausų kalba“) – populiariausia iš šiuo metu naudojamų kalbų, skirtų aprašyti duomenis ir manipuliuoti jais reliacinių duomenų bazių valdymo sistemose. Sukurta XX amžiaus 8-ame dešimtmetyje. Pirmoji šią kalbą komerciniame produkte pritaikė korporacija, dabar žinoma Oracle vardu. Ja pasekė ir daug kitų.

SQL raktažodžiai

redaguoti

SQL remiasi keletu raktažodžių, kuriuos naudojant galima įvykdyti funkcijas. Juos galima suskirstyti į keletą grupių.

Duomenų išrinkimas

redaguoti

ANSI bei ISO standartai apibrėžia šiuos SQL raktažodžius, skirtus duomenims išrinkti:

  • SELECT sakinys naudojamas įrašams iš vienos ar daugiau lentelių atrinkti; šie įrašai dažniausiai atrenkami pagal tam tikrus kriterijus.
  • FROM sakinyje nurodomos lentelės, iš kurių reikia išrinkti eilutes (sąryšiai gali būti nurodomi skirtingais JOIN variantais).
  • WHERE sakinyje nurodoma sąlyga, kurią turi tenkinti grąžinamos eilutės.
  • GROUP BY sąlygoje nurodoma, kad reikia grupuoti tam tikras eilutes. Grupuojant eilutes, dažniausiai naudojamos agregatinės funkcijos maksimalioms, vidutinėms ir panašioms reikšmėms išrinkti iš grupuotų eilučių.
  • ORDER BY sakiniu nurodoma viena ar daugiau rikiavimo sąlygų.
  • HAVING sakinyje nurodomas kriterijus, taikomas grupuojamoms eilutėms; šis raktinis žodis gali būti naudojamas tik tais atvejais, jeigu užklausoje yra GROUP BY sakinys.

Iš išvardytų sakinių bet kurioje užklausoje visada naudojami SELECT bei FROM sakiniai, o kiti naudojami pagal poreikį.

Duomenų valdymas

redaguoti
  • INSERT vartojamas naujų įrašų įterpimui į lentelę
  • DELETE leidžia ištrinti įrašus iš lentelės.
  • UPDATE naudojamas pakeisti vieno ar daugiau įrašų reikšmes.

Transakcijos

redaguoti

Sistemose, kurios palaiko transakcijas, galima naudoti šias komandas:

  • BEGIN nurodoma pradėti atominę operaciją (transakciją)
  • COMMIT patvirtinama sėkmingai baigiama transakcija
  • ROLLBACK nurodoma, kad visa transakcija atšaukiama

Duomenų apibrėžimas

redaguoti
  • CREATE naudojama sukurti įvairiems objektams, pavyzdžiui, lentelėms.
  • DROP nurodoma sunaikinti tam tikrus objektus.

Kai kuriuos sistemos turi komandą ALTER, kuria galima pakeisti objektus sistemos darbo metu.

Trūkumai

redaguoti
  • Nėra standartinio būdo skaidyti sudėtingas komandas į kelias smulkesnes
  • SQL realizacijos skirtingose duomenų bazių valdymo sistemose nėra nuoseklios, nepilnai suderinamos.

Kadangi standartinių galimybių dažnai neužtenka, duomenų bazių sistemose SQL išplečiama jai pridedant daugiau programavimo kalbų funkcijų

„Sveikas, pasauli“ pavyzdys

redaguoti

Tarkime, yra lentelės pavidalo duomenų bazė:

Įvairios_vietos
Vieta Būsena
Australija A
Antarktida B
Europa C
Pasaulis Sveikas
Mėnulis Pilnatis

SQL sakinys:

SELECT Būsena + ', pasauli'
FROM Įvairios_vietos
WHERE Vieta = 'Pasaulis';

Oracle Database dialektu:

SELECT Būsena || ', pasauli'
FROM Įvairios_vietos
WHERE Vieta = 'Pasaulis'

Turėtų grąžinti atsakymą:

Sveikas, pasauli