B I T M A N B I v: T M A N

Save this PDF as:
 WORD  PNG  TXT  JPG

Méret: px
Mutatás kezdődik a ... oldaltól:

Download "B I T M A N B I v: T 2015.02.22 M A N"

Átírás

1 Adatbázis Rendszerek II. 2. Gy: PLSQL 1. B I v: T M A N 1/75

2 A PL/SQL alapjai A PL/SQL alapjai Változók DBMS_OUTPUT Vezérlési szerkezetek Tömbök Tárolt rutinok kezelése 2/75

3 Tárolt eljárások Tárolt eljárás = PSM = Persistent Stored Module (tartósan tárolt modul): adatbázisobjektumként tárolt algoritmikus program, amely SQL utasításokat is tartalmazhat. Szintaxisa az SQL algoritmikus kiterjesztésének tekinthető. A tárolt eljárásokra rendszerenként más-más elnevezést használnak, és szintaxisuk is többé-kevésbé eltér: 3/75 SQL:1999 szabvány: PSM = Persistent Stored Modules Oracle: PL/SQL = Procedural Language extension to SQL SyBase, Microsoft SQL Server: Transact-SQL Informix: SPL = Stored Procedural Language MySQL: MySQL Stored Routines (5.1 verziótól), Stored Program Language (SPL)

4 Tárolt eljárások Tárolt eljárások előnyei: Az eljárások a szerveren vannak, így nem kell üzeneteket küldözgetni az SQL utasítások végrehajtásakor a kliens és a szerver között. Az eljárások elemzése egyszer történik meg. Az eljárásokra ugyanolyan biztonsági intézkedések vonatkoznak, mint az adatbázisban tárolt többi adatra. 4/75

5 A PL/SQL alapjai PL/SQL : az Oracle SQL kiegészítése a procedurális elemek definiálására PL/SQL programok építőköve a PL/SQL blokk DECLARE BEGIN EXCEPTION Deklarációs rész Végrehajtási rész (kód rész) Hibakezelő rész 5/75 END;

6 A PL/SQL alapjai Blokk típusok: Névtelen blokk: Minden futtatáskor lefordítja a rendszer, nem tárolódik le, nem lehet rá hivatkozni. Nevesített blokk: Címkével azonosított blokk, amelynek címkéjére feltételes vagy ugró utasításokból hivatkozhatunk. Alprogramok: Tárolt függvények és eljárások, melyek nevükkel azonosítottak, és bármikor meghívhatók. Triggerek: Tárolt, névvel hívható blokkok, melyek automatikusan lefutnak bizonyos műveletek esetén. Job-ok: Tárolt, névvel hívható blokkok, melyek megadott időpontokban automatikusan lefutnak. 6/75

7 Blokk típusok Névtelen Eljárás Függvény [DECLARE] BEGIN -- utasítások [EXCEPTION] END; PROCEDURE név IS BEGIN -- utasítások [EXCEPTION] END; FUNCTION név RETURN adattípus IS BEGIN -- utasítások RETURN érték; [EXCEPTION] END; 7/75

8 A PL/SQL alapjai Névtelen blokk: declare pi constant NUMBER(9,7) := ; sugar INTEGER(5); terulet NUMBER(14,2); begin sugar := 3; terulet := pi * power(radius, 2); Változó deklarációk Utasítások INSERT INTO korok VALUES (sugar, terulet); end; 8/75

9 A PL/SQL alapjai <<Korok_beszurasa>> declare Nevesített blokk, címkével pi constant NUMBER(9,7) := ; terulet NUMBER(14,2); cursor meret_cursor is SELECT * FROM meretek; meret meret_cursor%rowtype; begin open meret_cursor; loop fetch meret_cursor into meret; terulet := pi * power(meret.sugar, 2); INSERT INTO korok VALUES (meret.sugar,terulet); exit when meret_cursor%notfound; end loop; close meret_cursor; end; 9/75

10 A PL/SQL alapjai Az utasításokat ; zárja le Kis- és nagybetű egyenértékű (az utasításokban a kulcsszavakat szoktuk nagybetűvel írni, de nem kötelező!) Comment REM vagy --, többsoros /* */ Használat előtt deklarálni kell a változókat, azonosítókat, eljárásokat! ** hatványozás,!= nem egyenlő, karakterlánc összefűzés Egy PL/SQL program egy vagy több blokkból áll, a blokkok egymásba ágyazhatók 10/75

11 A PL/SQL alapjai Deklarációs rész Változók Konstansok Cursor-szerkezetek Hibakezelési elemek Törzs rész Utasítások SQL parancsok Vezérlési elemek Hibakezelő rész Hibakezelő műveletek leírása 11/75

12 A PL/SQL alapjai A PL/SQL alapjai Változók DBMS_OUTPUT Vezérlési szerkezetek Tömbök Tárolt rutinok kezelése 12/75

13 Változók Programváltozók: adatbázisban létező típusú változók Típusmásolással létrehozott változók: Egy adott tábla egy adott oszlopával megegyező típus (oszlopváltozó) Egy adott tábla rekordszerkezetével megegyező típus (sorváltozó) 13/75

14 Deklarációs rész DECLARE változóazonosító típus(attribútum) := kifejezés; Programváltozók: NUMBER: Numerikus érték, opcionálisan kijelölhet a teljes ábrázolási hossz és a tizedes jegyek darabszáma CHAR: Szöveges érték, opcionálisan kijelölhető a karakterek darabszáma DATE: dátum típus BOOLEAN: logikai adattípus 14/75

15 DECLARE (példák) Numerikus érték, 8 számjegy, 2 tizedes, induló érték 3 ar NUMBER(8,2) := 3; Szöveges érték, 25 karakter nev CHAR(25); Dátum érték, kezdértéke szeptember 28. datum DATE := 11-SEPT.-28 ; Logikai érték reszvetel BOOLEAN; Konstansok megadása ARFOLYAM CONSTANT NUMBER(6,1) := 103.2; 15/75

16 DECLARE (példák) Típusmásolással létrehozott változók: Oszlopváltozó: 16/75 DECLARE v1 tábla.mező%type -- v1 auto.rendszam%type; A megadott tábla megadott oszlopának típusát veszi fel Sorváltozó: DECLARE v2 tábla%rowtype -- v2 auto%rowtype; A megadott tábla rekordszerkezetével megegyező típusú változó Hivatkozás egy elemére: v2.rendszam

17 DECLARE (példák) DECLARE v_sor vevo%rowtype; BEGIN SELECT * INTO v_sor FROM vevo WHERE partner_id = 21; DBMS_OUTPUT.PUT_LINE(v_sor.MEGNEVEZES); END; DBMS_OUTPUT.PUTLINE Szöveg kiírása a konzolra. 17/75

18 Autós példa Adott a következő tábla, a feladatok ezen értelmezettek: rsz tipus auto szín kor ar 18/75

19 Autós példa 1. PL/SQL blokk írása egy autó rekord felvitelére, ahol a mezőértékeket memóriaváltozókon keresztül adjuk meg, melyek típusa az AUTO tábla mezőinek típusával megegyező. DECLARE a auto.rsz%type := 'abc124'; b auto.tipus%type:= 'fiat' ; c auto.szin%type := 'piros'; d auto.kor%type := 3; e auto.ar%type := ; BEGIN INSERT INTO AUTO VALUES (a, b, c, d, e); END; 19/75

20 Autós példa 2. PL/SQL blokk írása, mely egy memóriaváltozóban megadott kornál idősebb autók árát csökkenti 10%-al. DECLARE x NUMBER(2) := 7; BEGIN UPDATE AUTO SET ar=ar*0.9 WHERE kor >= x; END; 20/75

21 Autós példa 3. PL/SQL blokk írása, memóriaváltozóban megadott korú autók törlésére. DECLARE x AUTO.KOR%TYPE := 2; BEGIN DELETE FROM AUTO WHERE kor = x; END; 21/75

22 Autós példa 4. PL/SQL blokk írása autók átlagárának lekérdezésére és a napló táblában történő eltárolására. DECLARE x AUTO.AR%TYPE; BEGIN SELECT AVG(ar) INTO x FROM AUTO; INSERT INTO naplo VALUES (x, sysdate, user); END; 22/75

23 A PL/SQL alapjai A PL/SQL alapjai Változók DBMS_OUTPUT Vezérlési szerkezetek Tömbök Tárolt rutinok kezelése 23/75

24 DBMS_OUTPUT Használatát a SET SERVEROUTPUT ON SQL*Plus paranccsal engedélyezni kell! Hasznos parancsok: ACCEPT: változó értékének beolvasása PUT: Kiírás ugyanabba a sorba NEW_LINE: Sortörés PUT_LINE: Kiírás külön sorba 24/75

25 DBMS_OUTPUT (Példa) SET SERVEROUTPUT ON ACCEPT nev PROMPT 'Kérem adja meg a nevét: ' DECLARE szoveg varchar2(50); BEGIN szoveg := nev ' sikeresen '; szoveg := CONCAT('&nev',' sikeresen végrehajtotta a programot!'); DBMS_OUTPUT.PUT_LINE (szoveg); END; 25/75

26 Autós példa 5. PL/SQL blokk írása autók átlagárának lekérdezésére és kiíratása. DECLARE x AUTO.AR%TYPE; BEGIN SELECT AVG(ar) INTO x FROM AUTO; DBMS_OUTPUT.PUT_LINE(x); END; 26/75

27 Autós példa 6. PL/SQL blokk írása az autók darabszámának lekérdezésére és kiíratása. DECLARE x int; BEGIN SELECT count(*) INTO x FROM AUTO; DBMS_OUTPUT.PUT_LINE('Autók száma: ' x); END; 27/75

28 Autós példa 7. Tárolt eljárás készítése a 10 évnél idősebb autók törlésére. Fix feltétel! create procedure torol as begin delete from auto where kor>10; end; 28/75

29 Autós példa 8. Tárolt eljárás készítése paraméterként megadott kornál idősebb autók törlésére. create or replace procedure torol (x in number) as begin delete from auto where kor>x; end; 29/75

30 Példa 9. Tárolt függvény készítése, mellyel egy numerikus érték növelhető 5-el. create function novel5 (x in number) return number as begin return x+5; end; 30/75

31 Autós példa 10. Plsql blokk írása az előző függvény meghívására és a megnövelt érték napló táblában történő eltárolására. declare x number(6) := 12; ujx number(6); begin ujx := novel5(x); insert into naplo values(user, sysdate, ujx); end; 31/75

32 Példa 11. Tárolt függvény készítése, mellyel egy numerikus érték növelhető 5-el. create function novel5 (x in number) return number as begin end; return x+5; > variable szam number > execute :szam := novel5(13); A PL/SQL eljárás sikeresen befejeződött. > print szam SZAM declare x number(6) := 12; begin x := novel5(13); dbms_output.put_line(x); end; 32/75 18

33 Példa 11b. Tárolt függvény készítése, mellyel egy numerikus érték növelhető 5-el. create function novel5 (x in number) return number as begin return x+5; end; > Select novel5(13) from dual; NOVEL5(13) 18 Select novel5(13) from dual; 33/75

34 Példa 12. Tárolt eljárás készítése, mellyel egy numerikus érték növelhető 5-el. create or replace procedure novelot (x in number) as ujx number(6); begin ujx := x+5; dbms_output.put_line(ujx); end; > execute novel(27); A PL/SQL eljárás sikeresen befejeződött. begin novelot(27); end 34/75 UJX 32

35 Példa 13. Tárolt eljárás készítése a legmagasabb ár kiírására az autó táblából. create or replace procedure maxar as x number(8); begin select max(ar) into x from auto; dbms_output.put_line(x); end; begin maxar; end 35/75

36 Példa 13b. Tárolt függvény készítése a legmagasabb ár lekérésére az autó táblából. create or replace function maxarfgv return int as x int; begin 36/75 select max(ar) into x from auto; return(x); end; declare x int; begin x := maxarfgv; dbms_output.put_line(x); end; select maxarfgv from dual;

37 A PL/SQL alapjai A PL/SQL alapjai Változók DBMS_OUTPUT Vezérlési szerkezetek Tömbök Tárolt rutinok kezelése 37/75

38 Vezérlési szerkezetek - IF IF feltétel1 THEN utasítások1 ELSIF feltétel2 THEN utasítások2 ELSIF feltétel3 THEN utasítások3 ELSE utasításokn END IF; 38/75

39 IF (Példa) DECLARE v_avgber munkatars.ber%type; szoveg VARCHAR2(50); begin SELECT AVG(ber) INTO v_avgber FROM munkatars; IF v_avgber < THEN szoveg:='kevesebb mint százezer.'; ELSIF (v_avgber > ) AND (v_avgber <= ) THEN szoveg:='százezer és kétszázezer közötti.'; ELSE szoveg:='kétszázezer fölött van.'; END IF; DBMS_OUTPUT.PUT_LINE('Az átlagbér' szoveg); END; 39/75

40 IF (Példa) Eljárás, mely ha nem létező rendszámot kap paraméterül, akkor hibaüzenetet ír a képernyőre, egyébként kiírja az autó típusát. create or replace procedure rsz_tip (rszbe char) is x int := 0; t varchar(30); begin select count(*) into x from auto where rsz=rszbe; if x = 0 then dbms_output.put_line('nem létező rendszám: ' rszbe); else select tipus into t from auto where rsz=rszbe; dbms_output.put_line('az autó típusa: ' t); end if; end; 40/75 begin rsz_tip('aaa100'); end; begin rsz_tip('jrz932'); end;

41 Vezérlési szerkezetek - Ciklusok Alap ciklus (LOOP ciklus) WHILE ciklus FOR ciklus 41/75

42 Vezérlési szerkezetek - LOOP LOOP utasítások END LOOP; Kilépés: EXIT; Feltétellel együtt: EXIT WHEN feltétel; x := 0; LOOP x := x+1; EXIT WHEN x=20; END LOOP; -- Eredmény: x = 20 42/75

43 Loop (Példa) DECLARE 43/75 v_sorsz vevo.partner_id%type := 21; v_megnev vevo.megnevezes%type; BEGIN LOOP SELECT megnevezes INTO v_megnev FROM vevo WHERE partner_id = v_sorsz; DBMS_OUTPUT.PUT_LINE(v_megnev); v_sorsz := v_sorsz +1; EXIT WHEN v_sorsz > 28; END LOOP; END;

44 Vezérlési szerkezetek -WHILE WHILE feltétel LOOP utasítások END LOOP; x := 0; WHILE x<20 LOOP x := x+1; END LOOP; -- Eredmény: x = 20 44/75

45 Vezérlési szerkezetek - FOR FOR index IN induló_egész.. záró_egész LOOP utasítások END LOOP; Indexváltozó: minden értéket felvesz a tartományon belül. Nem szükséges külön deklarálni Automatikusan NUMBER típusú Konstansként látható és használható a cikluson belül x := 0; FOR i IN LOOP x := x + i; END LOOP 45/75 -- Eredmény: x = 55 ( =55)

46 For (példa) FOR szam IN LOOP INSERT INTO gyokok VALUES (szam, SQRT(szam)); END LOOP; 46/75

47 A PL/SQL alapjai A PL/SQL alapjai Változók DBMS_OUTPUT Vezérlési szerkezetek Tömbök Tárolt rutinok kezelése 47/75

48 Tömbök Kb. mint a C és a Java nyelvekben alkalmazott tömbök A tömb indexnek a kezdő értéke mindig egy, és mindig eggyel növekszik. A tömb típus deklarálása: TYPE tömbnév IS VARRAY(méret) OF elemtípus; Az elemtípus alap-, rekord, vagy objektum típusú lehet. Type auto_t1 is varray(10) of int; Type auto_t2 is varray(10) of auto.rsz%type; Type auto_t3 is varray(10) of auto%rowtype; Type auto_t4 is varray(10) of auto; 48/75

49 Tömbök Értékadás: Declare Type t1tip is varray(3) of int; t1 t1tip; Begin t1:=t1tip(13,55,32); Értékadás: Declare Type t1tip is varray(100) of int; t1 t1tip := t1tip(); Begin t1.extend(3); t1(1):=13; t1(2):=55; t1(3):=32; 49/75

50 Tömb kezelése FOR ciklussal DECLARE type nevtomb IS VARRAY(5) OF VARCHAR2(10); type ponttomb IS VARRAY(5) OF INTEGER; nevek nevtomb; pontok ponttomb; osszdb integer; BEGIN nevek := nevtomb('bitman', 'Nórika', 'Pistike', 'Tökmag', 'Zsuzsika'); pontok:= ponttomb(98, 97, 78, 87, 92); osszdb:= nevek.count; dbms_output.put_line('összesen ' osszdb ' darab hallgató'); FOR i in 1.. osszdb LOOP dbms_output.put_line('hallgató: ' nevek(i) ' Pontszám: ' pontok(i)); END LOOP; END; 50/75

51 A PL/SQL alapjai A PL/SQL alapjai Változók DBMS_OUTPUT Vezérlési szerkezetek Tömbök Tárolt rutinok kezelése 51/75

52 Tárolt alprogramok létrehozása 52/75 Szövegszerkesztő Figyelmeztetés: A függvény létrehozása fordítási hibákkal fejeződött be. Show errors Az eljárás létrejött. Szerkesztés 1 2 Text fájl Tárolás az adatbázisban Forráskód Fordítás P-kód Futtatás

53 Tárolt rutinok kezelése Bár a rendszer megkülönbözteti az eljárást és a függvényt, nem lehet ugyanazzal a névvel eljárást és függvényt is létrehozni! Létrehozott alprogramok nevének listáztatása: select * from user_procedures; 53/75

54 Tárolt rutinok kezelése SELECT * FROM ALL_OBJECTS WHERE OBJECT_TYPE IN ('FUNCTION','PROCEDURE','PACKAGE') 54/75

55 Tárolt rutinok kezelése Alprogram tartalmának (sorainak) kiíratása: select text from user_source where name = 'TOROL' order by line; Alprogramok törlése: Drop procedure eljárásnév; Drop function függvénynév; Ha függvényt próbálunk eljárásként törölni: Drop procedure r_szin; 55/75

56 Alprogramok paraméterei IN paraméter alapértelmezett OUT paraméter visszatérő értékhez INOUT be-kimenő érték IN paraméter OUT paraméter IN OUT paraméter DECLARE Értékátadás: parancssori paraméterekkel BEGIN EXCEPTION END; Tetszőleges típusúak, kijelentkezéskor törlődnek Deklarálás: DECLARE változó típus := kezdőérték; Pl.: declare szam int := 0; 56/75

57 Alprogramok paraméterei Példa IN és OUT paraméterre create or replace procedure negyzet1 (a in number, b out number) is begin b := a*a; end; declare a int:=5; b int; begin negyzet1(a, b); dbms_output.put_line(b); end; 57/75

58 Alprogramok paraméterei Példa IN OUT paraméterre create procedure negyzet2 (a in out int) is begin a := a*a; end; declare a int:=5; begin negyzet2(a); dbms_output.put_line(a); end; 58/75

59 Eljárások lefuttatása SQL Commands Paraméter nélküli eljárások elindítása: begin adb; end; begin adb(); end; Csak IN paraméterek esetén: IN paraméter OUT paraméter IN OUT paraméter DECLARE BEGIN EXCEPTION IN és OUT paraméterek esetén: 59/75 begin torol(10); end; END; declare vp int; begin negyzet(5, vp); dbms_output.put_line(vp); end;

60 Függvények lefuttatása SQL Commands Függvények elindítása: változó := fgv_név(in paraméterek); IN paraméter DECLARE BEGIN RETURN érték EXCEPTION select szindb( piros ) from dual; END; declare x number(6) := 12; begin x := szindb( piros ); dbms_output.put_line(x); end; 60/75 Ha a függvény végrehajtási részében DML művelet van, ezt a megoldást kell használni.

61 MiniBolt ER modell Kkod Nev Tkod Nev Ar Kategória K-T Termék Leiras Sorsz Vásárlás Datum Darab Nev VID Vásárló Cim Fizmod 61/75

62 MiniBolt struktúra modell Kategória Kkod Nev Termék Kategoria Tkod Nev Ar Leiras Vásárlás Tkod Sorszam Idopont Darab VID Vásárló VID Nev Cim Fizmod 62/75

63 Órai feladatok 1. Hozza létre a MiniBolt adattábláit: Create table Kategoria( Kkod char(3) primary key, Nev char(20)); Create table Termek( Tkod char(3) primary key, Nev char(20), Ar numeric(6), Leiras char(20), Kategoria char(3) not null references Kategoria); 63/75

64 Órai feladatok 1. Hozza létre a MiniBolt adattábláit: Create table Vasarlo( VID char(3) primary key, Nev char(20), Cim char(20), Fizmod char(4)); Create table Vasarlas( Sorsz numeric(5), Datum date, Tkod char(3) not null references Termek, Darab numeric(4), VID char(3) not null references Vasarlo, unique (Sorsz, Datum) ); 64/75

65 Órai feladatok 2. Vigye fel az alábbi rekordokat: 65/75 insert into Kategoria values('k01', 'Kaja'); insert into Kategoria values('k02', 'Pia'); insert into Kategoria values('k03', 'Ruha'); insert into Kategoria values('k04', 'Egyéb'); insert into Vasarlo values('v01', 'Kék Alma', 'Mc. Kék u.12', 'kp'); insert into Vasarlo values('v02', 'Zöld Galamb', 'Mc. Hó u.72', 'atut'); insert into Vasarlo values('v03', 'Fekete Farkas', 'Mc. Vas u.25', 'bkar'); insert into Vasarlo values('v04', 'Kovács Éva', 'Eger. Lap u.4', 'bkar'); insert into Vasarlo values('v05', 'Kis Béla', 'Eger. Bé u.9', 'kp'); insert into Vasarlo values('v06', 'Kis Jenő', 'Eger. Cé u.11', 'atut'); insert into Vasarlo values('v07', 'Kis Noé', 'Eger. Cé u.11', 'kp'); insert into Vasarlo values('v08', 'Kis Tas', 'Eger. Cé u.11', 'bkar'); insert into Vasarlo values('v09', 'Hó Manó', 'Nyék. Tó u.74', 'atut'); insert into Vasarlo values('v10', 'Ká Rozi', 'Nyék. Ká u.5', 'kp'); insert into Vasarlo values('v11', 'Víz Jenő', 'Mc. Út u.39', 'bkar');

66 Órai feladatok 2. Vigye fel az alábbi rekordokat: insert into Termek values('t01', 'sör', 200, 'világos', 'k02'); insert into Termek values('t02', 'bor', 200, 'vörös', 'k02'); insert into Termek values('t03', 'zsömle', 20, 'kerek', 'k01'); insert into Termek values('t04', 'zsír', 100, 'disznó', 'k01'); insert into Termek values('t05', 'paprika', 100, 'zöld', 'k01'); insert into Termek values('t06', 'csipsz', 300, 'sajtos', 'k01'); insert into Termek values('t07', 'csipsz', 400, 'retkes', 'k01'); insert into Termek values('t08', 'mackó felső', 8000, 'Adidasss', 'k03'); insert into Termek values('t09', 'mackó alsó', 8000, 'Adidasss', 'k03'); insert into Termek values('t10', 'mackó póló', 5000, 'Adidasss', 'k03'); insert into Termek values('t11', 'Fű', 5000, 'KO', 'k04'); insert into Termek values('t12', 'AB2 puska', 5000, 'Mert megérdemled', 'k04'); insert into Termek values('t13', 'Benzin', 350, 'Óccsó', 'k04'); insert into Termek values('t14', 'Nő', 10000, 'Szőke', 'k04'); insert into Termek values('t15', 'Nő', 20000, 'Barna', 'k04'); insert into Termek values('t16', 'Óvszer', 2000, 'Családi csomag', 'k04'); 66/75

67 Órai feladatok 2. Vigye fel az alábbi rekordokat: insert into Vasarlas values(1, '15-FEBR. -16', 't14', 1, 'v06'); insert into Vasarlas values(2, '15-FEBR. -16', 't15', 1, 'v06'); insert into Vasarlas values(3, '15-FEBR. -16', 't16', 1, 'v06'); insert into Vasarlas values(4, '15-FEBR. -16', 't03', 4, 'v01'); insert into Vasarlas values(5, '15-FEBR. -16', 't04', 1, 'v01'); insert into Vasarlas values(6, '15-FEBR. -16', 't02', 2, 'v02'); insert into Vasarlas values(7, '15-FEBR. -16', 't06', 2, 'v02'); insert into Vasarlas values(8, '15-FEBR. -16', 't07', 4, 'v02'); insert into Vasarlas values(9, '15-FEBR. -16', 't08', 1, 'v03'); insert into Vasarlas values(10, '15-FEBR. -16', 't09', 1, 'v03'); insert into Vasarlas values(11, '15-FEBR. -16', 't11', 3, 'v04'); insert into Vasarlas values(12, '15-FEBR. -16', 't12', 1, 'v04'); insert into Vasarlas values(13, '15-FEBR. -16', 't13', 100, 'v05'); insert into Vasarlas values(1, '15-FEBR. -17', 't12', 1, 'v11'); insert into Vasarlas values(2, '15-FEBR. -17', 't16', 5, 'v10'); insert into Vasarlas values(3, '15-FEBR. -17', 't16', 1, 'v09'); insert into Vasarlas values(4, '15-FEBR. -17', 't03', 6, 'v07'); 67/75

68 Órai feladatok Készítsen egy UjKategoria nevű tárolt eljárást, mely paraméterként megkapja egy új kategória adatait, és beszúrja a Kategoria táblába. Próbálja ki az eljárást. 2. Készítsen egy KategoriaTorol nevű tárolt eljárást, mely kitöröl egy adott kódú kategóriát. Próbálja ki az eljárást. H Készítsen KategoriaDarab nevű tárolt függvényt, mely visszaadja a kategóriák darabszámát. Hívja meg a függvényt. H 36 68/75

69 Órai feladatok 4. Készítsen egy UjTermek2 nevű tárolt eljárást, mely paraméterként megkapja egy új termék adatait, és beszúrja a termek táblába. Ha már létező kategóriakódot kap paraméterként, írjon üzenetet a képernyőre (Van már ilyen kategória: kkod), és ne hozza létre a kategóriát. H 40 69/75

70 Órai feladatok 5. Készítsen egy VasarloTorol nevű eljárást,, mely paraméterként megkapja egy vásárló VID-jét. Ha nem létezik a személy, akkor írjon üzenetet a képernyőre (Nem létező személy: VID). H 40 70/75

71 Órai feladatok 6. Készítsen egy TermekAtlag nevű függvényt, amely kiszámítja, és visszatérő értékként visszaadja a termék táblában lévő termékek átlagárát. Hívja meg a függvényt, használjon a visszatérő értékhez parancssori változót. Írja ki az eredményt a képernyőre. H 40 Hívja meg a függvényt a select paranccsal is! 71/75

72 Órai feladatok 7. Készítsen egy TermKatAtlag nevű függvényt, amely kiszámítja, és visszatérő értékként visszaadja a termék táblában lévő, adott kategóriájú termékek átlagárát. A függvény bemenő paramétere legyen a kategória neve (nem a kódja!) Ha nem létezik a megadott kategória, írja ki ennek tényét a függvény a képernyőre (Nem létező kategória: KatBe), és adjon vissza 0 értéket! H 40 Hívja meg a függvényt! 72/75

73 Órai feladatok Készítsen egy OsszParos nevű tárolt eljárást, mely paraméterként megkap egy kezdő és egy végértéket (egész számok), és kiszámítja a két végérték közötti páros számok összegét. H 45 Segítség: - A bemenő paraméterek értékét nem lehet felülírni! - IF MOD(szám, 2) = 0 THEN ha a szám kettővel osztva nullát ad maradékul akkor 73/75

74 Felhasznált irodalom Kovács László: PL/SQL, elektronikus jegyzet Barabás Péter: Adatbázis rendszerek 2., elektronikus jegyzet Jeffery D. Ullman, Jennifer Widom: Adatbázisrendszerek Kende Mária, Nagy István: ORACLE példatár Don Burleson: Oracle Tips ( 74/75

75 VÉGE V É G E 75/75

Haladó DBMS ismeretek 1

Haladó DBMS ismeretek 1 Haladó DBMS ismeretek 1 Hasznos információk A tantárgy weboldala: it.inf.unideb.hu/honlap/halado_oracle1 Oracle Junior képzés Gyakorlatok és a neptun Gyakorlat követelmények Ajánlott irodalom Juhász István

Részletesebben

B I T M A N B I v: T 2015.03.01 M A N

B I T M A N B I v: T 2015.03.01 M A N Adatbázis Rendszerek MSc 2. Gy: MySQL Táblák, adatok B I v: T 2015.03.01 M A N 1/41 Témakörök SQL alapok DDL utasítások DML utasítások DQL utasítások DCL utasítások 2/41 Az SQL jellemzése Az SQL a relációs

Részletesebben

Adatbázis Rendszerek II. 3. SQL alapok

Adatbázis Rendszerek II. 3. SQL alapok Adatbázis Rendszerek II. 3. SQL alapok 22/1 B IT v: 2016.10.20 MAN Oracle adattípusok Szöveges adattípusok CHAR (1-2000) VARCHAR (1-4000) VARCHAR2 (1-4000, nemzeti karakterekhez) CLOB (max. 8 TB) NCLOB

Részletesebben

PL/SQL 1. rész. Procedural Language extension to SQL

PL/SQL 1. rész. Procedural Language extension to SQL PL/SQL 1. rész Procedural Language extension to SQL utasítást ; zárja le PL/SQL blokk lezárása: / Szintaxis kis- és nagybetű egyenértékű (az utasításokban a kulcsszavakat szoktuk nagybetűvel írni, de nem

Részletesebben

PL/SQL (folytatás) Kurzorok, függvények, eljárások

PL/SQL (folytatás) Kurzorok, függvények, eljárások PL/SQL (folytatás) Kurzorok, függvények, eljárások Kurzorok Adattábla soronkénti feldolgozására szolgál A memóriában egy munkaterületen tárolódik a kurzorhoz tartozó tábla A kurzor az eredményhalmazban

Részletesebben

SQL*Plus. Felhasználók: SYS: rendszergazda SCOTT: demonstrációs adatbázis, táblái: EMP (dolgozó), DEPT (osztály) "közönséges" felhasználók

SQL*Plus. Felhasználók: SYS: rendszergazda SCOTT: demonstrációs adatbázis, táblái: EMP (dolgozó), DEPT (osztály) közönséges felhasználók SQL*Plus Felhasználók: SYS: rendszergazda SCOTT: demonstrációs adatbázis, táblái: EMP dolgozó), DEPT osztály) "közönséges" felhasználók Adatszótár: metaadatokat tartalmazó, csak olvasható táblák táblanév-prefixek:

Részletesebben

8. Gyakorlat SQL. DDL (Data Definition Language) adatdefiníciós nyelv utasításai:

8. Gyakorlat SQL. DDL (Data Definition Language) adatdefiníciós nyelv utasításai: 8. Gyakorlat SQL SQL: Structured Query Language; a relációs adatbáziskezelők szabványos, strukturált lekérdező nyelve SQL szabványok: SQL86, SQL89, SQL92, SQL99, SQL3 Az SQL utasításokat mindig pontosvessző

Részletesebben

B I T M A N B I v: T 2015.03.09 M A N

B I T M A N B I v: T 2015.03.09 M A N Adatbázis Rendszerek II. 5. Gy: PLSQL Triggerek B I v: T 2015.03.09 M A N 1/37 Passzív adatbázisok negatívumai Példa: VIR rendszer egyik adatbázis összegyűjti a termelési adatokat, egy másik erre épül

Részletesebben

SQL ALAPOK. Bevezetés A MYSQL szintaxisa Táblák, adatok kezelésének alapjai

SQL ALAPOK. Bevezetés A MYSQL szintaxisa Táblák, adatok kezelésének alapjai SQL ALAPOK Bevezetés A MYSQL szintaxisa Táblák, adatok kezelésének alapjai BEVEZETÉS SQL: Structured Query Language Strukturált Lekérdező Nyelv Szabvány határozza meg, azonban számos nyelvjárása létezik

Részletesebben

Adatbázis-kezelés. Harmadik előadás

Adatbázis-kezelés. Harmadik előadás Adatbázis-kezelés Harmadik előadás 39 Műveletek csoportosítása DDL adat definiálás Objektum létrehozás CREATE Objektum törlés DROP Objektum módosítás ALTER DML adat módosítás Rekord felvitel INSERT Rekord

Részletesebben

Adatbázisok II. Jánosi-Rancz Katalin Tünde 327A 1-1

Adatbázisok II. Jánosi-Rancz Katalin Tünde 327A 1-1 Adatbázisok II. 1 Jánosi-Rancz Katalin Tünde tsuto@ms.sapientia.ro 327A 1-1 Ajánlott irodalom Ullman-Widom: Adatbázisrendszerek. Alapvetés (Második, átdolgozott kiad), Panem, 2008. november (bővítés pl.uml,

Részletesebben

Adatbázis Rendszerek II. 6. PLSQL Triggerek 32/1B IT MAN

Adatbázis Rendszerek II. 6. PLSQL Triggerek 32/1B IT MAN Adatbázis Rendszerek II. 6. PLSQL Triggerek 32/1B IT MAN B IT v: 2016.03.04 MAN Passzív adatbázisok negatívumai Példa: VIR rendszer egyik adatbázis összegyűjti a termelési adatokat, egy másik erre épül

Részletesebben

A relációs adatbáziskezelés szabványos nyelve Két fő csoportba sorolhatók az utasításai

A relációs adatbáziskezelés szabványos nyelve Két fő csoportba sorolhatók az utasításai 8. gyakorlat Structured Query Language Struktúrált lekérdező nyelv A relációs adatbáziskezelés szabványos nyelve Két fő csoportba sorolhatók az utasításai DDL (Data Definition Language) adatstruktúra definiáló

Részletesebben

Adatbázis Rendszerek II. 3. Ea: MySQL alapok

Adatbázis Rendszerek II. 3. Ea: MySQL alapok Adatbázis Rendszerek II. 3. Ea: MySQL alapok 86/1 B IT v: 2016.02.16 MAN Témakörök MySQL letöltés, telepítés Beállítások, indítófájl Parancssoros használat MySQL adatbázisok MySQL adattáblák Bolt adatbázis

Részletesebben

A gyakorlat során MySQL adatbázis szerver és a böngészőben futó phpmyadmin használata javasolt. A gyakorlat során a következőket fogjuk gyakorolni:

A gyakorlat során MySQL adatbázis szerver és a böngészőben futó phpmyadmin használata javasolt. A gyakorlat során a következőket fogjuk gyakorolni: 1 Adatbázis kezelés 2. gyakorlat A gyakorlat során MySQL adatbázis szerver és a böngészőben futó phpmyadmin használata javasolt. A gyakorlat során a következőket fogjuk gyakorolni: Táblák létrehozása,

Részletesebben

ORACLE. SYS: rendszergazda SCOTT: demonstrációs adatbázis, táblái: EMP (dolgozó), DEPT (osztály) "közönséges" felhasználók

ORACLE. SYS: rendszergazda SCOTT: demonstrációs adatbázis, táblái: EMP (dolgozó), DEPT (osztály) közönséges felhasználók Oracle SQL*Plus SQL ORACLE Felhasználók: SYS: rendszergazda SCOTT: demonstrációs adatbázis, táblái: EMP (dolgozó), DEPT (osztály) "közönséges" felhasználók Adatszótár: metaadatokat tartalmazó, csak olvasható

Részletesebben

PL/SQL blokk. [címke] [DECLARE deklarációs utasítás(ok)] BEGIN végrehajtható utasítás(ok) [EXCEPTION kivételkezelő] END [név];

PL/SQL blokk. [címke] [DECLARE deklarációs utasítás(ok)] BEGIN végrehajtható utasítás(ok) [EXCEPTION kivételkezelő] END [név]; PL/SQL blokk [címke] [DECLARE deklarációs utasítás(ok)] végrehajtható utasítás(ok) [EXCEPTION kivételkezelő] END [név]; PL/SQL alprogramok Blokkba ágyazva Séma szinten Csomagban PL/SQL alprogramok Eljárás:

Részletesebben

Kalmár György Adatbázis alapú rendszerek

Kalmár György Adatbázis alapú rendszerek Kalmár György Adatbázis alapú rendszerek Oracle-ben az SQL utasítások feldolgozásához szükség van egy ún. kontextus memóriára, amely az összes lényeges információt tárolja egy utasítás végrehajtásához.

Részletesebben

Kilencedik témakör: Lazarus-Firebird. Készítette: Dr. Kotsis Domokos

Kilencedik témakör: Lazarus-Firebird. Készítette: Dr. Kotsis Domokos PASzSz Kilencedik témakör: Lazarus-Firebird Készítette: Dr. Kotsis Domokos Az SQLdb fülön IBConnection Kapcsolat A Data Access fülön Az SQLdb fülön... Select 1. Az SQLQuery lezárása. (Active := false,

Részletesebben

A trigger egy aktualizálási művelet esetén végrehajtandó programrészletet definiál. Alakja:

A trigger egy aktualizálási művelet esetén végrehajtandó programrészletet definiál. Alakja: ORACLE TRIGGEREK A trigger egy aktualizálási művelet esetén végrehajtandó programrészletet definiál. Alakja: CREATE [OR REPLACE] TRIGGER név { BEFORE AFTER INSTEAD OF } { DELETE INSERT UPDATE [OF oszlopok]

Részletesebben

Adatbázis Rendszerek II. 1. SQL programozási felületek 39/1B IT MAN

Adatbázis Rendszerek II. 1. SQL programozási felületek 39/1B IT MAN Adatbázis Rendszerek II. 1. SQL programozási felületek 39/1B IT MAN B IT v: 2016.02.10 MAN SQL felületek Hatékony: SQL parancsok kiadására Eredmények megtekintésére Nehézkes: Nagyobb volumenű, rutintevékenységek

Részletesebben

5. téma XML DB. Az adatkezelés és XML kapcsolata. Miért fontos az XML használata az adatbázis kezelésben?

5. téma XML DB. Az adatkezelés és XML kapcsolata. Miért fontos az XML használata az adatbázis kezelésben? Adatbázis modellek 5. téma XML DB Az adatkezelés és XML kapcsolata Miért fontos az XML használata az adatbázis kezelésben? Adattárolás alapformái: - strukturált - szabad-szöveges - szemi struktúrált -

Részletesebben

Dr. Pál László, Sapientia EMTE, Csíkszereda WEB PROGRAMOZÁS 4.ELŐADÁS. Adatbázis alapú alkalmazások készítése PHP-ben

Dr. Pál László, Sapientia EMTE, Csíkszereda WEB PROGRAMOZÁS 4.ELŐADÁS. Adatbázis alapú alkalmazások készítése PHP-ben Dr. Pál László, Sapientia EMTE, Csíkszereda WEB PROGRAMOZÁS 4.ELŐADÁS 2015-2016 Adatbázis alapú alkalmazások készítése PHP-ben Adatbázis alapú alkalmazás 2 A leggyakrabban használt dinamikus alkalmazások

Részletesebben

Adatbázisok* tulajdonságai

Adatbázisok* tulajdonságai Gazdasági folyamatok térbeli elemzése 4. előadás 2010. 10. 05. Adatbázisok* tulajdonságai Rendezett, logikailag összefüggő és meghatározott szempont szerint tárolt adatok és/vagy információk halmaza Az

Részletesebben

SQL- Utasítások csoportosítása Definíció: DDL: - objektum létrehozás CREATE - objektum megszüntetés DROP - objektum módosítás ALTER

SQL- Utasítások csoportosítása Definíció: DDL: - objektum létrehozás CREATE - objektum megszüntetés DROP - objektum módosítás ALTER Adatbázisok I SQL- Utasítások csoportosítása Definíció: DDL: - objektum létrehozás CREATE - objektum megszüntetés DROP - objektum módosítás ALTER Módosítás: DML: - rekord felvitel INSERT - rekord törlés

Részletesebben

Adatbázisban tárolt kollekciók

Adatbázisban tárolt kollekciók Adatbázisban tárolt kollekciók Dinamikus tömb és beágyazott tábla lehet CREATE TYPE t_beagy IS TABLE OF NUMBER; CREATE TYPE t_dint IS VARRAY(5) OF NUMBER; CREATE TABLE koll_tab ( azon NUMBER PRIMARY KEY,

Részletesebben

Adattípusok. Max. 2GByte

Adattípusok. Max. 2GByte Adattípusok Típus Méret Megjegyzés Konstans BIT 1 bit TRUE/FALSE SMALLINT 2 byte -123 INTEGER 4 byte -123 COUNTER 4 byte Automatikus 123 REAL 4 byte -12.34E-2 FLOAT 8 byte -12.34E-2 CURRENCY / MONEY 8

Részletesebben

Adattípusok. Max. 2GByte

Adattípusok. Max. 2GByte Adattípusok Típus Méret Megjegyzés Konstans BIT 1 bit TRUE/FALSE TINIINT 1 byte 12 SMALLINT 2 byte -123 INTEGER 4 byte -123 COUNTER 4 byte Automatikus 123 REAL 4 byte -12.34E-2 FLOAT 8 byte -12.34E-2 CURRENCY

Részletesebben

ADATBÁZIS-KEZELÉS FÉLÉVES FELADAT

ADATBÁZIS-KEZELÉS FÉLÉVES FELADAT ÓBUDAI EGYETEM Neumann János Informatikai Kar Nappali Tagozat ADATBÁZIS-KEZELÉS FÉLÉVES FELADAT NÉV: MÁK VIRÁG NEPTUN KÓD: A DOLGOZAT CÍME: Jani bácsi székadatbázisa Beadási határidő: 14. oktatási hét

Részletesebben

B I T M A N B I v: T M A N

B I T M A N B I v: T M A N Adatbázis Rendszerek II. 4. Ea: MySQL Tárolt eljárások B I v: T 2014.02.15 M A N 1/103 Témakörök Tárolt eljárások MySQL tárolt rutinok Az SPL nyelv elemei Bolt: Tárolt eljárás példák Triggerek Bolt: Trigger

Részletesebben

ADATBÁZIS-KEZELÉS - BEVEZETŐ - Tarcsi Ádám, ade@inf.elte.hu

ADATBÁZIS-KEZELÉS - BEVEZETŐ - Tarcsi Ádám, ade@inf.elte.hu ADATBÁZIS-KEZELÉS - BEVEZETŐ - Tarcsi Ádám, ade@inf.elte.hu Számonkérés 2 Papíros (90 perces) zh az utolsó gyakorlaton. Segédanyag nem használható Tematika 1. félév 3 Óra Dátum Gyakorlat 1. 2010.09.28.

Részletesebben

Adatbázis-kezelés, információs-rendszerek

Adatbázis-kezelés, információs-rendszerek Adatbázis-kezelés, információs-rendszerek 3. Ea: Eskúel (2011) Structured Query Language v: 2011.09.05 Szűcs Miklós - ME, ÁIT. 1.o Témakörök SQL alapok DDL utasítások DML utasítások DQL utasítás DCL utasítások

Részletesebben

B I T M A N B I v: T 2014.02.15 M A N

B I T M A N B I v: T 2014.02.15 M A N Adatbázis Rendszerek II. 3. Ea: MySQL alapok B I v: T 2014.02.15 M A N 1/106 Témakörök MySQL letöltés, telepítés Beállítások, indítófájl Parancssoros használat MySQL adatbázisok MySQL adattáblák Bolt adatbázis

Részletesebben

Adatbázis kezelés Delphiben. SQL lekérdezések

Adatbázis kezelés Delphiben. SQL lekérdezések Adatbázis kezelés Delphiben. SQL lekérdezések Structured Query Language adatbázisok kezelésére szolgáló lekérdező nyelv Szabályok: Utasítások tetszés szerint tördelhetők Utasítások végét pontosvessző zárja

Részletesebben

Adatbázisok I. Definíció: DDL: - objektum létrehozás CREATE - objektum megszüntetés DROP - objektum módosítás ALTER

Adatbázisok I. Definíció: DDL: - objektum létrehozás CREATE - objektum megszüntetés DROP - objektum módosítás ALTER Adatbázisok I 1 SQL- Utasítások csoportosítása Definíció: DDL: - objektum létrehozás CREATE - objektum megszüntetés DROP - objektum módosítás ALTER Módosítás: DML: - rekord felvitel INSERT - rekord törlés

Részletesebben

Adatbázis Rendszerek II. 4. Ea: MySQL Tárolt eljárások 110/1 B IT MAN

Adatbázis Rendszerek II. 4. Ea: MySQL Tárolt eljárások 110/1 B IT MAN Adatbázis Rendszerek II. 4. Ea: MySQL Tárolt eljárások 110/1 B IT MAN B IT v: 2016.02.09 MAN Témakörök Tárolt eljárások MySQL tárolt rutinok Az SPL nyelv elemei Bolt: Tárolt eljárás példák Triggerek Bolt:

Részletesebben

Tábla létrehozása: CREATE TABLE alma( ID INT( 3 ) NOT NULL PRIMARY KEY, Leiras VARCHAR( 100 ) );

Tábla létrehozása: CREATE TABLE alma( ID INT( 3 ) NOT NULL PRIMARY KEY, Leiras VARCHAR( 100 ) ); Tábla létrehozása: CREATE TABLE alma( ID INT( 3 ) NOT NULL PRIMARY KEY, Leiras VARCHAR( 100 ) ); CREATE TABLE `dihunor`.`csapat` ( `ID` INT( 4 ) NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT 'A csapat azonositoja',

Részletesebben

Adatbázis használata PHP-ből

Adatbázis használata PHP-ből Adatbázis használata PHP-ből Adatbázis használata PHP-ből...1 Nyílt forráskódú adatbázisok...1 A mysql függvények...2 A mysqli függvények...4 Bináris adatok adatbázisban való tárolása...8 Adatbázis csatoló

Részletesebben

Tartalomjegyzék. Tartalomjegyzék 1. Az SQL nyelv 1 Az SQL DDL alapjai 2

Tartalomjegyzék. Tartalomjegyzék 1. Az SQL nyelv 1 Az SQL DDL alapjai 2 Tartalomjegyzék Tartalomjegyzék 1 Az SQL nyelv 1 Az SQL DDL alapjai 2 Adatbázis parancsok 2 Táblaparancsok 2 A táblázat létrehozása 2 A táblázat módosítása 3 A tábla törlése 3 Indextábla létrehozása 3

Részletesebben

Bevezetés az SQL-be. Tankönyv: Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009

Bevezetés az SQL-be. Tankönyv: Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009 Bevezetés az SQL-be Tankönyv: Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009 2.3. Relációsémák definiálása SQL-ben Kulcsok megadása (folyt.köv.7.fej.) -- még: Relációs

Részletesebben

Gyakorlás: Hozzunk létre egy Alkalmazottak táblát AZO szám, Részleg szöveg, Munkakör szöveg és BelépésDátuma dátum típussal.

Gyakorlás: Hozzunk létre egy Alkalmazottak táblát AZO szám, Részleg szöveg, Munkakör szöveg és BelépésDátuma dátum típussal. Adatbázis létrehozása Adatleíró műveletek CREATE DATABASE "tan1" WITH ENCODING= LATIN2 ; vagy parancssorból a terminál alatt $ createdb tan1 E=latin2 Kapcsolódás az adatbázishoz $ psql tan1 Adattábla létrehozása

Részletesebben

BEVEZETÉS Az objektum fogalma

BEVEZETÉS Az objektum fogalma BEVEZETÉS Az objektum fogalma Program (1) Adat (2) Objektum Kiadványszerkesztés Word Táblázatkezelés Excel CAD AutoCad Adatbáziskezelés Access 1 Program (1) Adat (2) Objektum Adatmodell (2) A valós világ

Részletesebben

Az SQL*Plus használata

Az SQL*Plus használata Az SQL*Plus használata Célkitűzés Bejelentkezés az SQL*Plus-ba SQL utasítások szerkesztése Az eredmény formázása SQL*Plus utasításokkal Szkriptfájlok használata Az SQL és az SQL*Plus kapcsolata SQL*Plus

Részletesebben

LBRA6i integrált rendszer

LBRA6i integrált rendszer LBRA6i integrált rendszer LIBRA 6i logolás és a log megtekintése Készítette: Libra Szoftver Zrt. Létrehozás dátuma: 2005.12.15. Utolsó módosítás: 2014.10.30. Referencia szám: LIBRA6i_UZEM_V_1.5 Verzió:

Részletesebben

Adatbázis rendszerek II. Adatbázis elérése C# kliens programból ADO.NET API-n keresztül

Adatbázis rendszerek II. Adatbázis elérése C# kliens programból ADO.NET API-n keresztül Adatbázis rendszerek II. Adatbázis elérése C# kliens programból ADO.NET API-n keresztül Adatbázis elérés lehetőségei absztrakciós rétegen keresztül: - Open DataBase Connectivity (ODBC), közös függvényhalmaz,

Részletesebben

Az SQL nyelv Structured Query Language (Struktúrált lekérdező nyelv)

Az SQL nyelv Structured Query Language (Struktúrált lekérdező nyelv) Az SQL nyelv Structured Query Language (Struktúrált lekérdező nyelv) Az SQL a relációs adatbázis-kezelő rendszerek ma legelterjedtebb szabványosított adatbáziskezelő nyelve. Az IBM dolgozta ki 1983-ban,

Részletesebben

Debreceni Egyetem Informatikai Kar TANULÓI NYILVÁNTARTÓ SZOFTVER FIREBIRD ADATBÁZIS ALKALMAZÁSÁVAL

Debreceni Egyetem Informatikai Kar TANULÓI NYILVÁNTARTÓ SZOFTVER FIREBIRD ADATBÁZIS ALKALMAZÁSÁVAL Debreceni Egyetem Informatikai Kar TANULÓI NYILVÁNTARTÓ SZOFTVER FIREBIRD ADATBÁZIS ALKALMAZÁSÁVAL Témavezető: Dr. Bajalinov Erik Tudományos főmunkatárs Készítette: Juhász Gergely József Informatikatanári

Részletesebben

PL/SQL feladatok 8. gyakorlat

PL/SQL feladatok 8. gyakorlat 1. feladat PLSQL feladatok 8. gyakorlat Változóhasználat (I. az SQL*Plus felhasználói változói, II. az SQL*Plus környezeti változói, III. a PLSQL (belsõþ) változói). Az adatok képernyõþre való kiíratása

Részletesebben

Database Systems II. ZH összefoglaló

Database Systems II. ZH összefoglaló Database Systems II. ZH összefoglaló 1) Kód az adatbázisban tárolva PSM CREATE PROCEDURE name(parameters) local declarations body PL/SQL CREATE (OR REPLACE) PROCEDURE name(parameters) local declarations

Részletesebben

ADATBÁZIS RENDSZEREK I BEADANDÓ

ADATBÁZIS RENDSZEREK I BEADANDÓ ADATBÁZIS RENDSZEREK I BEADANDÓ n é v : H u zynets Erik n e p t un: BJ8BDJ t a n k ö r: G2-BGI G y a k. v ezető: Smid László G y a k. időpontja: Szerda 16-18 Feladat megfogalmazása Beadandóm főként számítógépes

Részletesebben

Jegyz könyv. Adatbázis-rendszerek II. Beadandó feladat. Miskolci Egyetem

Jegyz könyv. Adatbázis-rendszerek II. Beadandó feladat. Miskolci Egyetem Jegyz könyv Miskolci Egyetem Adatbázis-rendszerek II. Beadandó feladat Készítette: Er s Tamás Mihály (IEDBZO) 3. Évfolyam. Programtervez Informatikus Szak Miskolc, 2010 Feladat A feladat részletezése:

Részletesebben

Programozási technikák Pál László. Sapientia EMTE, Csíkszereda, 2009/2010

Programozási technikák Pál László. Sapientia EMTE, Csíkszereda, 2009/2010 Programozási technikák Pál László Sapientia EMTE, Csíkszereda, 2009/2010 12. ELŐADÁS Adatbázis-kezelés Delphiben 2 Adatmegjelenítés lekérdezés segítségével A táblákhoz hasonlóan a lekérdezések is az adatbázis

Részletesebben

Adatbázis rendszerek Gy: MySQL alapok

Adatbázis rendszerek Gy: MySQL alapok Adatbázis rendszerek 1. 1. Gy: MySQL alapok 103/1 B ITv: MAN 2015.09.27 Témakörök MySQL letöltés, telepítés Beállítások, indítófájl Parancssoros használat MySQL adatbázisok MySQL adattáblák Bolt adatbázis

Részletesebben

1. Alapok. #!/bin/bash

1. Alapok. #!/bin/bash 1. oldal 1.1. A programfájlok szerkezete 1. Alapok A bash programok tulajnképpen egyszerű szöveges fájlok, amelyeket bármely szövegszerkesztő programmal megírhatunk. Alapvetően ugyanazokat a at használhatjuk

Részletesebben

SQLServer. DB Recovery modes

SQLServer. DB Recovery modes SQLServer 13. téma Szöveges állományok kezelése XML DB Recovery modes A DML műveletek hatékonyságának fontos eleme a naplózás módozata: - FULL Recovery mode: minden elemi művelet naplózódik költséges,

Részletesebben

Adatbázisok 1 2013-14 tavaszi félév Vizsgatételsor

Adatbázisok 1 2013-14 tavaszi félév Vizsgatételsor Adatbázisok 1 2013-14 tavaszi félév Vizsgatételsor 1. Relációs adatmodell alapjai Adatmodell: Az adatmodell egy jelölésmód egy adatbázis adatszerkezetének a leírására, beleértve az adatra vonatkozó megszorításokat

Részletesebben

Programozás alapjai. 5. előadás

Programozás alapjai. 5. előadás 5. előadás Wagner György Általános Informatikai Tanszék Cserélve kiválasztásos rendezés (1) A minimum-maximum keresés elvére épül. Ismétlés: minimum keresés A halmazból egy tetszőleges elemet kinevezünk

Részletesebben

2012.05.11. Adatbázisok I A relációs algebra

2012.05.11. Adatbázisok I A relációs algebra Adatbázisok I A relációs algebra 2 3 4 1 Feladatok Tantárgy tkód cím kredit oktató Oktató oktkód név tanszék fizetés Feladatok 1. Az átlagos kreditpontszám: Γ avg(kredit) (Tantárgy) 2. A Matematika tanszéken

Részletesebben

Az SQL adatbázisnyelv: DML

Az SQL adatbázisnyelv: DML Az SQL adatbázisnyelv: DML Tankönyv: Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009 6.5. Az adatbázis tartalmának módosítása (DML utasítások) INSERT, DELETE, UPDATE

Részletesebben

Hozzunk ki többet abból amink van. Fehér Lajos

Hozzunk ki többet abból amink van. Fehér Lajos Hozzunk ki többet abból amink van Fehér Lajos Adatelérés Örök érvényű dolgaink Sor láncolás, migráció Index elhasználódás Tábla fregmentálódás Indexek száma Referenciális hivatkozások Triggerek Adatelérés

Részletesebben

Oracle Spatial. Térbeli adatot tartalmazó tábla: Geometry table Legalább 2 oszlopa van: Elsődleges kulcs, SDO_GEOMETRY típusú oszlop.

Oracle Spatial. Térbeli adatot tartalmazó tábla: Geometry table Legalább 2 oszlopa van: Elsődleges kulcs, SDO_GEOMETRY típusú oszlop. Oracle Spatial Az Oracle adatbázis-kezelő rendszer Oracle Spatial (Oracle Locator) nevű kiegészítő modulja támogatja a térbeli adatok kezelését. Térbeli adatot tartalmazó tábla: Geometry table Legalább

Részletesebben

Adatbázis használat I. 5. gyakorlat

Adatbázis használat I. 5. gyakorlat Adatbázis használat I. 5. gyakorlat Tudnivalók Jövő hétre a normalizálást hozni vagy e- mailben beküldeni! 7. héten (= két hét múlva!) nagyzh + FF checkpoint: adattáblák feltöltése, megszorítások 2010.

Részletesebben

Vizuális programozás gyakorlat

Vizuális programozás gyakorlat Vizuális programozás gyakorlat A gyakorlat célja az entitás modell készítésének és az MS SQLEXPRESS használatának gyakorlása. A gyakorlat során egy könyvtári szoftver adatmodelljét tervezzük meg, valamint

Részletesebben

B I T M A N B I v: T 2015.03.09 M A N

B I T M A N B I v: T 2015.03.09 M A N Adatbázis Rendszerek MSc 3. Gy: MySQL Lekérdezések B I v: T 2015.03.09 M A N 1/61 Témakörök SQL alapok DDL utasítások DML utasítások DQL utasítások DCL utasítások 2/61 DQL Adat lekérdező utasítás Az SQL

Részletesebben

Kliens oldali SQL-API

Kliens oldali SQL-API Adatbázis rendszerek I mysql SQL program API ME- GEIAL Dr. Kovács Lászl szló Üzleti logika elhelyezése adatbázis Kliens üzleti logika Nagy hálózati forgalom Decentralizált lt karbantartás Lassabb végrehajt

Részletesebben

Vektoros grafikát tároló adatbázisok. Katona Endre Térképi adatbázisok diasorozata alapján

Vektoros grafikát tároló adatbázisok. Katona Endre Térképi adatbázisok diasorozata alapján Vektoros grafikát tároló adatbázisok Katona Endre Térképi adatbázisok diasorozata alapján Vektoros adatábrázolás Kép = rajzelemek sorozata, koordinátageometriai leírással. CAD rendszerekre jellemző (pl.

Részletesebben

A gyakorlat során MySQL adatbázis szerver és a böngészőben futó phpmyadmin használata javasolt. A gyakorlat során a következőket fogjuk gyakorolni:

A gyakorlat során MySQL adatbázis szerver és a böngészőben futó phpmyadmin használata javasolt. A gyakorlat során a következőket fogjuk gyakorolni: 1 Adatbázis kezelés 3. gyakorlat A gyakorlat során MySQL adatbázis szerver és a böngészőben futó phpmyadmin használata javasolt. A gyakorlat során a következőket fogjuk gyakorolni: Tábla kapcsolatok létrehozása,

Részletesebben

Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) ABR 2( Adatbázisrendszerek 2) 2. Előadás: Tárolt eljárások

Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) ABR 2( Adatbázisrendszerek 2) 2. Előadás: Tárolt eljárások Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) ABR 2( Adatbázisrendszerek 2) 2. Előadás: Tárolt eljárások 1 Tárolt eljárások MySQL-ben Tárolt eljárások definíciója Tárolt rutinok használata (eljárások

Részletesebben

Adatbázis Rendszerek II. 3. Ea: MySQL alapok

Adatbázis Rendszerek II. 3. Ea: MySQL alapok Adatbázis Rendszerek II. 3. Ea: MySQL alapok 106/1 B IT v: 2016.02.09 MAN Témakörök MySQL letöltés, telepítés Beállítások, indítófájl Parancssoros használat MySQL adatbázisok MySQL adattáblák Bolt adatbázis

Részletesebben

STRUCTURED QUERY LANGUAGE(SQL) - ALAPOK

STRUCTURED QUERY LANGUAGE(SQL) - ALAPOK STRUCTURED QUERY LANGUAGE(SQL) - ALAPOK Az adatbázis-kezelők elvárásai közé tartozik az, hogy legyen egy olyan adatbázis-kezelőktől független nyelv, amely az adatdefiníciós, az adatmanipulációs és a lekérdező

Részletesebben

SQL/PSM tárolt modulok rész

SQL/PSM tárolt modulok rész SQL/PSM tárolt modulok --- 1.rész Tankönyv: Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009 9.3. Az SQL és a befogadó nyelv közötti felület (sormutatók) 9.4. SQL/PSM

Részletesebben

Kivételkezelés 2. SQLCODE lehetséges értékei:

Kivételkezelés 2. SQLCODE lehetséges értékei: Kivételkezelés Kivételkezelés 1 Futási időben bekövetkező hibák beépített (futtató rendszer váltja ki): előre definiált nem előre definiált felhasználói Az előre definiált és a felhasználói kivételeknek

Részletesebben

A könyv tartalomjegyzéke

A könyv tartalomjegyzéke A könyv tartalomjegyzéke Elıszó Bevezetés Adatbázis-kezelı rendszerek Adatmodellezés Alapfogalmak Egyedhalmaz, egyed Kapcsolat, kapcsolat-elıfordulás, kapcsolat típusa Tulajdonság, tulajdonságérték, értékhalmaz

Részletesebben

Adatbáziskezelés php-ben MySQL adatbáziskezelı rendszert használva

Adatbáziskezelés php-ben MySQL adatbáziskezelı rendszert használva Adatbáziskezelés php-ben MySQL adatbáziskezelı rendszert használva by A feladat bemutatása...1 Táblák létrehozása...1 Táblák feltöltése...2 Adatbáziskezelés php-ben...5 Csatlakozás az MySQL szerverhez

Részletesebben

Adatbázis tartalmának módosítása

Adatbázis tartalmának módosítása Adatbázis tartalmának módosítása Tankönyv 6.5. Változtatások az adatbázisban A módosító utasítások nem adnak vissza eredményt, mint a lekérdezések, hanem az adatbázis tartalmát változtatják meg. 3-féle

Részletesebben

Operációs Rendszerek II. labor. 2. alkalom

Operációs Rendszerek II. labor. 2. alkalom Operációs Rendszerek II. labor 2. alkalom Mai témák (e)grep Shell programozás (részletesebben, példákon keresztül) grep Alapvető működés: mintákat keres a bemeneti csatorna (STDIN vagy fájl) soraiban,

Részletesebben

Relációsémák létrehozása SQL nyelvben

Relációsémák létrehozása SQL nyelvben Relációsémák létrehozása SQL nyelvben SQL (Structured Query Language) lekérdezés módosítás relációséma leírására alkalmas utasítások: attribútumnevek, attribútumok adattípusa megszorításokat is megadhatunk,

Részletesebben

Adatbázisok biztonsága

Adatbázisok biztonsága Adatbázisok biztonsága 13 1 Célkitőzések 1. Titoktartás (Secrecy): olyan felhasználó, akinek nincs joga, ne férjen hozzá az információkhoz. pl. egy diák ne láthassa más diák kreditjeit. 2. Sértetlenség

Részletesebben

Megszorítások. AB1_06A_Megszorítások - Adatbázisok-1 EA (Hajas Csilla, ELTE IK) - J.D. Ullman elıadásai alapján

Megszorítások. AB1_06A_Megszorítások - Adatbázisok-1 EA (Hajas Csilla, ELTE IK) - J.D. Ullman elıadásai alapján Megszorítások Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009 7.1. Kulcsok és idegen kulcsok 7.2. Attribútumra vonatkozó megszorítások 7.3. Megszorítások módosítása

Részletesebben

SZÁMÍTÓGÉPES PROBLÉMAMEGOLDÁS

SZÁMÍTÓGÉPES PROBLÉMAMEGOLDÁS SZÁMÍTÓGÉPES PROBLÉMAMEGOLDÁS 2.ELŐADÁS A VB programozási nyelv Az Excel programozása 2 A VB programozási nyelv Adattípusok Adatok kezelése Vezérlőszerkezetek Adattípusok és műveletek Egész adattípusok

Részletesebben

SQL. Táblák összekapcsolása lekérdezéskor Aliasok Allekérdezések Nézettáblák

SQL. Táblák összekapcsolása lekérdezéskor Aliasok Allekérdezések Nézettáblák SQL Táblák összekapcsolása lekérdezéskor Aliasok Allekérdezések Nézettáblák A SELECT UTASÍTÁS ÁLTALÁNOS ALAKJA (ISM.) SELECT [DISTINCT] megjelenítendő oszlopok FROM táblá(k direkt szorzata) [WHERE feltétel]

Részletesebben

Adatbázisok webalkalmazásokban

Adatbázisok webalkalmazásokban Sapientia - EMTE, Pannon Forrás,,Egységes erdélyi felnőttképzés a Kárpát-medencei hálózatban 2010 A JDBC API A Data Access Object tervezési minta Adatforrás - DataSource JDBC architektúra A JDBC API java.sql

Részletesebben

SQL parancsok feldolgozása

SQL parancsok feldolgozása Az SQL nyelv SQL nyelv szerepe Sequental Query Language, deklaratív nyelv Halmaz orientált megközelítés, a relációs algebra műveleteinek megvalósítására Előzménye a SEQUEL (IBM) Algoritmus szerkezeteket

Részletesebben

MySQL. Elektronikus jegyzet Széchenyi István Egyetem Távközlési tanszék

MySQL. Elektronikus jegyzet Széchenyi István Egyetem Távközlési tanszék MySQL Elektronikus jegyzet Széchenyi István Egyetem Távközlési tanszék Távközlés-informatika szakirány Protokollok és Szoftverek I. Zsiga Bálint Kovács Ákos Az relációs adatbázis-kezelő rendszerekről Kis

Részletesebben

5. Gyakorlat. 5.1 Hálós adatbázis modell műveleti része. NDQL, hálós lekérdező nyelv:

5. Gyakorlat. 5.1 Hálós adatbázis modell műveleti része. NDQL, hálós lekérdező nyelv: 5. Gyakorlat 5.1 Hálós adatbázis modell műveleti része NDQL, hálós lekérdező nyelv: A lekérdezés navigációs jellegű, vagyis a lekérdezés megfogalmazása során azt kell meghatározni, hogy milyen irányban

Részletesebben

Függvények. Programozás alapjai C nyelv 7. gyakorlat. LNKO függvény. Függvények(2) LNKO függvény (2) LNKO függvény (3)

Függvények. Programozás alapjai C nyelv 7. gyakorlat. LNKO függvény. Függvények(2) LNKO függvény (2) LNKO függvény (3) Programozás alapjai C nyelv 7. gyakorlat Szeberényi Imre BME IIT Függvények C program egymás mellé rendelt függvényekből áll. A függvény (alprogram) jó absztrakciós eszköz a programok

Részletesebben

Programozás alapjai C nyelv 7. gyakorlat. Függvények. Függvények(2)

Programozás alapjai C nyelv 7. gyakorlat. Függvények. Függvények(2) Programozás alapjai C nyelv 7. gyakorlat Szeberényi Imre BME IIT Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I. 2005.11.05. -1- Függvények C program egymás mellé rendelt függvényekből

Részletesebben

BGF. 4. Mi tartozik az adatmodellek szerkezeti elemei

BGF. 4. Mi tartozik az adatmodellek szerkezeti elemei 1. Mi az elsődleges következménye a gyenge logikai redundanciának? inkonzisztencia veszélye felesleges tárfoglalás feltételes függés 2. Az olyan tulajdonság az egyeden belül, amelynek bármely előfordulása

Részletesebben

Adatbázis rendszerek. Molnár Bence. Szerkesztette: Koppányi Zoltán

Adatbázis rendszerek. Molnár Bence. Szerkesztette: Koppányi Zoltán Adatbázis rendszerek Molnár Bence Szerkesztette: Koppányi Zoltán A mai órán A mai órán SQL (és ami mögötte van) Mi lesz a ZH-ban? SQL Történet 1970-es évek eleje IBM SEQUEL (Structured English QUery Languge)

Részletesebben

Szkriptnyelvek. 1. UNIX shell

Szkriptnyelvek. 1. UNIX shell Szkriptnyelvek 1. UNIX shell Szkriptek futtatása Parancsértelmez ő shell script neve paraméterek shell script neve paraméterek Ebben az esetben a szkript tartalmazza a parancsértelmezőt: #!/bin/bash Szkriptek

Részletesebben

7. fejezet: Mutatók és tömbök

7. fejezet: Mutatók és tömbök 7. fejezet: Mutatók és tömbök Minden komolyabb programozási nyelvben vannak tömbök, amelyek gondos kezekben komoly fegyvert jelenthetnek. Először is tanuljunk meg tömböt deklarálni! //Tömbök használata

Részletesebben

Adatbázis I. 11. előadás. Kulcsok az SQL ben. Hivatkozásépségi megszorítások és idegen kulcsok.

Adatbázis I. 11. előadás. Kulcsok az SQL ben. Hivatkozásépségi megszorítások és idegen kulcsok. Adatbázis I. 11. előadás Kulcsok az SQL ben. Hivatkozásépségi megszorítások és idegen kulcsok. 1 1. Kulcsok az SQL-ben 2. Hivatkozási épség és idegen kulcsok 3. Attribútum értékre vonatk. megszorítások

Részletesebben

Eljárások és függvények

Eljárások és függvények Eljárások és függvények Jegyzet Összeállította: Faludi Anita 2012. Bevezetés Ez a jegyzet elsősorban azoknak a diákoknak készült, akiket tanítok, ezért a jegyzet erőteljesen hiányos. Az olvasó egy percig

Részletesebben

IBM WebSphere Adapters 7. változat 5. alváltozat. IBM WebSphere Adapter for Oracle E-Business Suite felhasználói kézikönyv 7. változat 5.

IBM WebSphere Adapters 7. változat 5. alváltozat. IBM WebSphere Adapter for Oracle E-Business Suite felhasználói kézikönyv 7. változat 5. IBM WebSphere Adapters 7. változat 5. alváltozat IBM WebSphere Adapter for Oracle E-Business Suite felhasználói kézikönyv 7. változat 5.kiadás IBM WebSphere Adapters 7. változat 5. alváltozat IBM WebSphere

Részletesebben

7. Laboratóriumi gyakorlat: Vezérlési szerkezetek II.

7. Laboratóriumi gyakorlat: Vezérlési szerkezetek II. 7. Laboratóriumi gyakorlat: Vezérlési szerkezetek II. A gyakorlat célja: 1. A shell vezérlő szerkezetei használatának gyakorlása. A használt vezérlő szerkezetek: if/else/fi, for, while while, select, case,

Részletesebben

Webprogramozás szakkör

Webprogramozás szakkör Webprogramozás szakkör Előadás 5 (2012.04.09) Programozás alapok Eddig amit láttunk: Programozás lépései o Feladat leírása (specifikáció) o Algoritmizálás, tervezés (folyamatábra, pszeudokód) o Programozás

Részletesebben

Egészítsük ki a Drupal-t. Drupal modul fejlesztés

Egészítsük ki a Drupal-t. Drupal modul fejlesztés Egészítsük ki a Drupal-t Drupal modul fejlesztés Drupal 6.0 2008. február 13. Miért írjunk Drupal modult? Nincs az igényeinknek megfelelő modul Valamilyen közösségi igény kielégítése Valami nem úgy működik

Részletesebben

Memóriagazdálkodás. Kódgenerálás. Kódoptimalizálás

Memóriagazdálkodás. Kódgenerálás. Kódoptimalizálás Kódgenerálás Memóriagazdálkodás Kódgenerálás program prológus és epilógus értékadások fordítása kifejezések fordítása vezérlési szerkezetek fordítása Kódoptimalizálás L ATG E > TE' E' > + @StPushAX T @StPopBX

Részletesebben

A programozás alapjai

A programozás alapjai A programozás alapjai Változók A számítógép az adatokat változókban tárolja A változókat alfanumerikus karakterlánc jelöli. A változóhoz tartozó adat tipikusan a számítógép memóriájában tárolódik, szekvenciálisan,

Részletesebben

Adatbázis Rendszerek II. 7. PLSQL JOB-ok 25/1B IT MAN

Adatbázis Rendszerek II. 7. PLSQL JOB-ok 25/1B IT MAN Adatbázis Rendszerek II. 7. PLSQL JOB-ok 25/1B IT MAN B IT v: 2016.03.04 MAN Témakörök A PL/SQL alapjai Alprogramok Csomagok Triggerek Job-ok 25/2 B IT MAN ECA (Event, Condition, Action) modell E Szabály

Részletesebben