Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Az SQL nyelv alapjai. Az SQL nyelv jellemzői  Az SQL a Structured Query Language (Struktúrált Lekérdező Nyelv) rövidítése, amely adatbázis-kezelő rendszerek.

Hasonló előadás


Az előadások a következő témára: "Az SQL nyelv alapjai. Az SQL nyelv jellemzői  Az SQL a Structured Query Language (Struktúrált Lekérdező Nyelv) rövidítése, amely adatbázis-kezelő rendszerek."— Előadás másolata:

1 Az SQL nyelv alapjai

2 Az SQL nyelv jellemzői  Az SQL a Structured Query Language (Struktúrált Lekérdező Nyelv) rövidítése, amely adatbázis-kezelő rendszerek szabványos lekérdező nyelve.  Nem algoritmikus nyelv, nem tartalmaz elágazást, ciklust,nem alkalmas rekurzív feladatok végrehajtására.  Halmazorientált nyelv, melynek műveletei egy adatbázis különböző objektumain hajthatók végre.

3 Az SQL nyelv jellemzői  Az SQL egy beépülő nyelv, mely más programozási nyelvekkel együtt, abba beépülve használható. (pl.:a felhasználói felület DELPHI, lekérdezés SQL)  Az SQL nyelvben minden parancs egy kulcsszóval kezdődik, és pontosvesszővel fejeződik be.  A parancsok egymásba ágyazhatók.

4 Az SQL nyelv alkotóelemei  Adatlekérdező nyelv az adatbázisból lekérdezés útján történő információnyerés  Adatdefiníciós nyelv adatbázisok és adattáblák létrehozása, törlése, szerkesztése, módosítása  Adatmanipulációs nyelv az adattáblák karbantartása  Adatvezérlő nyelv jogosultságok és tranzakciók kezelése

5 Lekérdező utasítások Cél: az adatbázisból történő információnyerés Az utasítás általános szerkezete: SELECT (attribútumok) FROM (táblanév) WHERE(feltétel)

6 Lekérdező utasítások A lekérdező utasítás teljes felépítése: SELECT [DISTINCT|ALL] *|attr1,attr2,… FROM tábla1,[INNER JOIN|LEFT JOIN|RIGHT JOIN tábla3 ON feltétel] [WHERE feltétel] [GROUP BY oszlopnév1, oszlopnév2,…] [HAVIG feltétel] [ORDER BY oszlopnév1 | oszlopszám1, …..][ASC|DESC]

7 Lekérdező utasítások  Egy tábla összes rekordjának megjelenítése: SELECT * FROM táblanév; ( A * helyettesíthető a mezőnevek felsorolásával és viszont)  Azonos rekordok ismétlésének kihagyása: SELECT DISTINCT* FROM táblanév;

8 Lekérdező utasítások  Projekció (vetítés) Az eredmény táblában csak a felsorolt mezők adatait jeleníti meg.  SELECT [DISTINCT] attrib1,attrib2 FROM táblanév;  SELECT DISTINCT nev,evfolyam,osztaly FROM tanulo;

9 Lekérdező utasítások  Kiterjesztés A lekérdezésben szereplő mezők felhasználásával újabb mezőket hozunk létre.  SELECT nev,pontszam1+pontszam2 FROM tanulo;

10 Lekérdező utasítások  Szelekció (Adott feltételnek megfelelő adatok megjelenítése, melyet a WHERE záradék után adunk meg)  SELECT atributum1,attributum2,…. FROM táblanév WHERE feltétel;  SELECT * FROM tanulo WHERE (evfolyam=’’12’’) AND (osztaly=‘’B’’)

11 Lekérdező utasítások Összehasonlító operátorok: 1.BETWEEN x AND y A BETWEEN kifejezésben keresett értéknek x és y értékek közé kell esnie 2.IN (a,b,c..) a zárójelben egy halmazt adunk meg, a keresett kifejezés e halmaz eleme kell legyen.) 3.LIKE karakteres mezők összehasonlítására használható. A mintában a *,%,_? helyettesítő karakterek használhatók. SELECT *FROM tanulo WHERE nev LIKE ‘’S%’’;

12 Lekérdező utasítások  Descartes-szorzat A relációk közötti szorzás műveletet valósítja meg, tehát a lehetséges variációkat állítja elő.  SELECT tablanev1.mezők,tablanev2.mezők FROM tablanev1,tablanev2;  SELECT tanulo.*,tantargy.* FROM tanulo, tantargy;

13 Lekérdező utasítások  Összekapcsolás: Több adattáblán elhelyezkedő információk egy táblára gyűjtésére használható.  Belső összekapcsolás: SELECT tanulo.*, tantargy.* FROM tanulo INNER JOIN tantargy ON ( tanulo.tantargykod = tantargy.tantargykod); (csak mindkét táblában szereplő mezőadatok esetén)  Külső összekapcsolás: SELECT tanulo.*, tantargy.* FROM tanulo LEFT (RIGHT) JOIN tantargy ON ( tanulo.tantargykod = tantargy.tantargykod);  (a tanuló tábla összes rekordja akkor is, ha nincs megfelelő a tantargy táblában)

14 Lekérdező utasítások  Csoportosítás A rekordokat egy adott mező értékei szerint csoportokra bontjuk. (Legtöbbször az adott mező azonos értékei alapján, pl. evfolyam=‘’12’’, osztaly=’’B’’) Ezután a csoportokon műveleteket hajthatunk végre, az eredményt újabb mezőben tárolhatjuk. SELECT attribútum1, attribútum2 [SUM,MAX,MIN,COUNT,AVG](attribútum3) FROM táblanév GROUP BY attrib4,attrib5; SELECT evfolyam,osztaly,COUNT(tanulokod) AS‘’letszam’’ FROM tanulo GROUP BY evfolyam, osztaly;

15 Lekérdező utasítások A csoportosítás esetén használható függvények:  COUNT megadja a tábla sorainak számát  SUM megadja a paraméterben szereplő oszlop adatainak összegét  AVG megadja a paraméterben szereplő oszlop adatainak átlagát  MIN megadja a paraméterben szereplő numerikus adatok közül a legkisebbet  MAX megadja a paraméterben szereplő numerikus adatok közül a legnagyobbat

16 Lekérdező utasítások Lekérdezés csoportosítással létrejött táblában (csoportfeltételek megadása) WHERE helyett HAVING SELECT attribútum1, attribútum2 [SUM,MAX,MIN,COUNT,AVG](attribútum3) FROM táblanév GROUP BY attrib4,attrib5; HAVING csoportfeltétel SELECT evfolyam,osztaly,COUNT(tanulokod) AS‘’letszam’’ FROM tanulo GROUP BY evfolyam, osztaly; HAVING COUNT(tanulokod)>20;

17 Lekérdező utasítások  Rendezés A lekérdezés eredmény relációjának rendezésére ORDER BY záradékkal SELECT attribútum1, attribútum2 FROM reláció ORDER BY attribútum1[ASC,DESC], attribútum2[ASC,DESC]; SELECT * FROM tanulo ORDER BY nev desc;

18 Adattípusok Az adattípusok (rendszerenként eltérők lehetnek):  CHAR(n) n hosszúságú karaktersorozat  VARCHAR(n) legfeljebb n hosszúságú karaktersorozat  INTEGER egész szám (röviden INT)  REAL valós (lebegőpontos) szám, másnéven FLOAT  DECIMAL(n[,d]) n jegyű decimális szám, ebből d tizedesjegy  DATE dátum (év, hó, nap)  TIME idő (óra, perc, másodperc)  Az adattípushoz "DEFAULT érték" megadásával alapértelmezett érték definiálható. Ha ilyet nem adunk meg, az alapértelmezett érték NULL.

19 Adatmanipulációs nyelv Az adattáblák karbantartásának műveletei:  Új rekord beszúrása a táblába INSERT INTO táblanév(attribútumlista) VALUES(értéklista INSERT INTO tanulo (kod,nev,evf,oszt) VALUES(009,”Nagy János”,”12”,”b”); Használhatjuk a NULL értéket Az új rekord az utolsó után tárolódik

20 Adatmanipulációs nyelv  Módosítás A tábla meghatározott mezőinek módosítása: UPDATE táblanév SET (attr1=adat1,attr2=adat2) [WHERE feltétel] UPDATE dolgozo SET fizet=1.1*fizet WHERE fizet<10000;

21 Adatmanipulációs nyelv  Törlés Törli a tábla feltételnek megfelelő sorait (feltétel megadása nélkül mindent) DELETE FROM táblanév [WHERE feltétel] DELETE FROM tanulo WHERE evfolyam=‘’12’’;

22 Adatdefiníciós nyelv Adatdefiníciós műveletek:  Adatbázisok létrehozása  Adattáblák létrehozása, módosítása, törlése  Lekérdezésekben létrejövő táblák készítése, törlése  Indexállományok kezelése

23 Adatdefiníciós nyelv  Adatbázis létrehozása: CREATE DATABASE (adatbázis neve); CREATE DATABASE termekek;

24 Adatdefiníciós nyelv  Adattábla létrehozása CREATE TABLE táblanév (attribnev1 adattip1 (méret1) [NOT NULL] (attribnev2 adattip2 (méret2) [NOT NULL]; CREATE TABLE tanulo (kod INTEGER,nev CHAR(16),evf(CHAR3), oszt(1),pont(INTEGER));

25 Adatdefiníciós nyelv  Adattábla törlése DROP TABLE (táblanév); DROP TABLE tanulo;

26 Adatdefiníciós nyelv Adattábla szerkezetének módosítása  Attribútum hozzáadása: ALTER TABLE táblanév ADD (attrib1 adattip1 (méret1)…. ALTER TABLE dolgozo ADD fizetes INTEGER;

27 Adatdefiníciós nyelv  Meglévő attribútum törlése ALTER TABLE (táblanév) DROP (oszlopnév); ALTER TABLE tanulo DROP szemelyiszam;

28 Adatdefiníciós nyelv  Attribútum módosítása: ALTER TABLE táblanév MODIFY (attrib1 újadattipus1(újméret1)… ALTER TABLE tanulo MODIFY osztondij number(7); Az attribútumok módosítása sok hibát okozhat, nagy figyelem szükséges!!!!!!!

29 Adatdefiníciós nyelv  Indexelés A lekérdezések végrehajtásának ideje csökkenthető Mezőadatok ismétlődése ellenőrizhető CREATE [UNIQUE] INDEX indexnév ON táblanév (attrib1,attrib2….); CREATE INDEX ind_tanulonev ON tanulo (nev);

30 Adatvezérlő nyelv  Felhaszálói jogosultságok megadása: GRANT jogosultság ON tánlanév TO felhasználó [WITH GRANT OPTION] Jogosultságok: ALL, SELECT, INSERT, UPDATE(attrib), DELETE, ALTER, INDEX, WITH GRANT OPTION (a jogok továbbadhatók)

31 Adatvezérlő nyelv  Jogosultságok visszavonása REVOKE jogosultság ON táblanév FROM felhasználó REVOKE delete ON tanulo FROM tanulok


Letölteni ppt "Az SQL nyelv alapjai. Az SQL nyelv jellemzői  Az SQL a Structured Query Language (Struktúrált Lekérdező Nyelv) rövidítése, amely adatbázis-kezelő rendszerek."

Hasonló előadás


Google Hirdetések