[[oktatas:adatbázis-kezelés:sql|< SQL]] ====== Az SQL nyelv bemutatása ====== * **Szerző:** Sallai András * Copyright (c) 2012, Sallai András * Szerkesztve: 2012, 2014 * Licenc: [[https://creativecommons.org/licenses/by-sa/4.0/|CC BY-SA 4.0]] * Web: https://szit.hu ===== Az SQL nyelv ===== Az SQL egy szabványos lekérdezőnyelv. Adatbázis-kezelőkben használjuk adatok kezelésére. 1970-ben az IBM szakemberei dolgozták ki kutatójuk [[wp>Edgar_F._Codd|Edgar Frank "Ted" Codd]] által fejlesztett relációs adatbázismodell alapján. Az SQL nyelv nem kisbetű-nagybetűérzékeny, a használt táblanevek, viszont az lehet a rendszertől függően. Az SQL nyelv Data Manipulation Language (DML), azaz adatkezelő, Data Control Language (DCL), azaz adatvezérlő, Data Definition Language (DDL), azaz adatvezérlő és Query, vagyis lekérdező nyelv. ===== Szabványai ===== Az SQL nyelv a népszerűségének köszönhetően szabvány lett. A következő felsorolásban láthatjuk az eddig megjelent szabványokat: * SQL86 * SQL89 * SQL92 * SQL99 más néven SQL3 * SQL:2006 * SQL:2008 * SQL:2011 * SQL:2017 Az egyes megvalósítások természetesen tartalmazhatnak eltéréseket. ===== Résznyelvek ===== A SQL három résznyelvre osztható: * SQL DDL * **D**ata **D**efinition **L**anguage * adatdefiníciós nyelv * CREATE, DROP, ALTER * SQL DML * **D**ata **M**anipulation **L**anguage * adatmanipulációs nyelv * SELECT, INSERT, UPDATE, DELETE * SQL DCL * **D**ata **C**ontrol **L**anguage * adatvezérlő nyelv * GRANT, REVOKE ===== Záradékok ===== Az SQL nyelvben úgynevezett záradékokat használunk. A záradékokat a következő táblázat mutatja be: ^ Záradék kezdőneve ^ Leírás ^ | select | Milyen mezőket, adatok kell megjeleníteni | | from | melyik táblára vagy táblákra van szükség | | where | feltételek | | group by | csoportosítás | | having | feltételek csoportosítás után | | order by | rendezés | | limit | a megjelenített sorok limitálása | A záradékok különféle SQL kifejezésekből állnak, ahol lehet a kifejezés állhat állandókból, adatbázis azonosítókból (például mezőnév), operátorokból, és újabb kifejezésekből. ===== Álnevek ===== A táblázatok és a mezők után használhatunk álneveket. Szintaktika: select nev as álnév from tábla álnév Példa: select j.rendszam as rendszámok from jarmuvek j Van egy járművek nevű tábla, amire szeretnék csak röviden hivatkozni. Az eredményt ugyanakkor a "rendszámok" felirattal szeretném ellátni. ===== Kérdések ===== Mi az SQL? * Strong Query Language * Structured Question Language * Structured Query Language Egyéb kérdések: - Melyek az adatdefiníciós utasítások? - Melyik utasításokat használjuk adatok manipulálására?