Adatbázis Rendszerek II. 4. PLSQL Kurzorok, hibakezelés 53/1B IT MAN

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

Download "Adatbázis Rendszerek II. 4. PLSQL Kurzorok, hibakezelés 53/1B IT MAN"

Átírás

1 Adatbázis Rendszerek II. 4. PLSQL Kurzorok, hibakezelés 53/1B IT MAN B IT v: MAN

2 A PL/SQL alapjai Adatok kezelése Kurzorok Hibakezelés 53/2 B IT MAN

3 Adatok kezelése PL/SQL-ben Műveletek: Írás (INSERT) Módosítás (UPDATE) Törlés (DELETE) Olvasás (SELECT INTO) Információforrás: Adatbázis adatai PL/SQL-blokk változók INSERT UPDATE DELETE SELECT 53/3 B IT MAN

4 Adatok kezelése - Írás INSERT utasítással Formátuma megegyezik az SQL szabványban megismerttel, de bővíthető a returning kifejezéssel! Mezőértékek megadásánál szerepelhetnek PL/SQL változók Példa: x := 3; y := 'alma'; INSERT INTO gyumi VALUES (x, y, 4); 53/4 B IT MAN

5 Adatok kezelése - Törlés DELETE utasítással Formátuma megegyezik az SQL szabványban megismerttel, de bővíthető a returning kifejezéssel! PL/SQL változók helye: Példa: x := 3; Értékkifejezésben Feltételi részben DELETE FROM gyumi WHERE id = x; 53/5 B IT MAN

6 Adatok kezelése - Módosítás UPDATE utasítással Formátuma megegyezik az SQL szabványban megismerttel, de bővíthető a returning kifejezéssel! PL/SQL változók helye: Értékkifejezésben Feltételi részben Példa: x := 3; y := 43; UPDATE gyumi SET kor = y WHERE id = x; 53/6 B IT MAN

7 Returning utasításrész Egysoros, egyszerűsített SELECT.. INTO kifejezés A select parancs nincs kiírva Az adatok mindig az érintett táblából származnak Az into előtti mezőlistának meg kell egyeznie az into utáni változó listával declare v_nev varchar2(20); delete from termek where tkod='t07' returning nev into v_nev; dbms_output.put_line('a törölt termék neve: ' v_nev); Termek Kategoria Tkod Nev Ar Leiras 53/7 B IT MAN

8 Adatok kezelése returning kifejezés create sequence seq1; create table T4 (kod int, adat varchar2(40)); create trigger t4t1 before insert on t4 for each row :new.kod := seq1.nextval; T4 kod adat declare a int; insert into t4 (adat) values ('Tulipán') returning kod into a; dbms_output.put_line('a rekord kódja: ' a); 53/8 B IT MAN

9 Adatok kezelése returning kifejezés create or replace procedure updterm (maxar in number, szaz in number, db out number) is update termek set ar=ar*(1+szaz/100) where ar < maxar returning count(*) into db; declare x int; updterm (200, 7, x); dbms_output.put_line('módosított termékek száma: ' x); 53/9 B IT MAN

10 Adatok kezelése Lekérdezés SELECT INTO utasítással INTO kulcsszó után változólista: PL/SQL változók A lekérdezés eredménye kerül bele A listában több változót is fel lehet sorolni (projekciós részben szereplő mezők számával megegyezően) Egyelemű (rekordtípusú - %ROWTYPE) Akkor alkalmazható, ha az eredmény pontosan egy rekordból áll. (Kell, hogy értéket kapjon, és nem kaphat több értéket!) 53/10 B IT MAN

11 Adatok kezelése Lekérdezés (Példa) declare egyed ember%rowtype; nev char(20); select * into egyed from ember where id = 2345; nev := egyed.nev; dbms_output.put_line(nev); 53/11 B IT MAN

12 Adatok kezelése Lekérdezés (Példa) declare enev char(20); ekor int; select nev, kor into enev, ekor from ember where id = 2345; dbms_output.put_line(enev, ekor); 53/12 B IT MAN

13 A PL/SQL alapjai Adatok kezelése Kurzorok Hibakezelés 53/13 B IT MAN

14 Kurzor Az adatok kezelésére használt memóriarészt környezeti területnek nevezi az Oracle. A kurzor olyan eszköz, amivel megnevezhetjük a környezeti területet, hozzáférhetünk az ott lévő adatokhoz. Az Oracle kétféle kurzort használ: Implicit kurzor: az Oracle automatikusan hozza létre, és kezeli minden DML művelet esetén, akkor is, ha csak egy sort érint a művelet. Ez a típus rejtett, nem láthatók a benne lévő adatok. Explicit kurzor: a felhasználó a programjában deklarálja, és kezeli. A kurzor megnyitható, a benne lévő adatok elérhetők, kiolvashatók belőle. A kurzor mindig egy select parancs eredményeként jön létre. 53/14 B IT MAN

15 Implicit kurzor Az implicit kurzor neve mindig sql! Használható attribútumok: - %found Van benne adat? - %notfound Nincs benne adat? - %isopen Nyitva van? (False) - %rowcount Feldolgozott sorok száma declare sordb number(5); update dolgozok set fizetes = fizetes ; if sql%notfound then dbms_output.put_line('a dolgozók tábla üres'); elsif sql%found then sordb := sql%rowcount; dbms_output.put_line(sordb ' dolgozó fizetése frissítve'); end if; 53/15 B IT MAN

16 Explicit kurzor declare c_id dolgozok.id%type; c_nev dolgozok.nev%type; c_cim dolgozok.cim%type; Az explicit kurzornak mi adunk nevet! Használható attribútumok: - %found Van benne adat? - %notfound Nincs benne adat? - %isopen Nyitva van? - %rowcount Feldolgozott sorok száma cursor c_dolgozok is select id, nev, cim from dolgozok; open c_dolgozok; loop fetch c_dolgozok into c_id, c_nev, c_cim; exit when c_dolgozok%notfound; dbms_output.put_line(c_id '-' c_nev '-' c_cim); end loop; close c_dolgozok; 53/16 B IT MAN

17 Adatok kezelése Kurzor Több rekordot visszaadó lekérdezés esetén használandó az explicit kurzor. Életciklusa: 1. Kurzor deklaráció (DECLARE részben) 2. Kurzor megnyitás 3. Rekord kiolvasások ciklusa 4. Kurzor lezárás Nem DECLARE OPEN FETCH Üres? Igen CLOSE 53/17 B IT MAN

18 Kurzor attribútumok %ROWCOUNT Értéke az adott pillanatig beolvasott rekordok száma. %FOUND Értéke TRUE, ha az adott FETCH utasítás még talál benne rekordot. %NOTFOUND Értéke TRUE, ha az adott FETCH utasítás már nem talál benne rekordot. %ISOPEN Értéke TRUE, ha a kurzor nyitott. 53/18 B IT MAN

19 Adatok kezelése Kurzor (elvi példa) declare cursor cursornév(paraméterek) is select ; vlista cursornév%rowtype; open cursornév(akt_param); loop fetch cursornév into vlista; exit when cursornév%notfound; adatok kiírása, feldolgozása end loop; close cursornév; Kurzor deklarálása Megnyitás Kiolvasás Lezárás 53/19 B IT MAN

20 Adatok kezelése Kurzor példa A kurzor működése create or replace procedure tlp as cursor cur is select * from kategoria; cv cur%rowtype; open cur; loop fetch cur into cv; exit when cur%notfound; dbms_output.put_line('név: ' cv.nev); dbms_output.put_line('feldolgozva: ' cur%rowcount); end loop; close cur; 53/20 B IT MAN

21 Adatok kezelése Kurzor példa Adott nap előtt születettek beszúrása egy másik táblába: declare cursor lista (datum date) is select nev, lakcim from szemelyek where szuldat < datum; c1 lista%rowtype; open lista(' '); loop fetch lista into c1 exit when lista%notfound; insert into szemelyek2 values(c1.nev, c1.lakcim); end loop; close lista; 53/21 B IT MAN

22 Adatok kezelése Kurzor példa FOR ciklussal A kurzor működése create or replace procedure tlp as cursor cur is select * from kategoria; for cv in cur loop dbms_output.put_line('név: ' cv.nev); dbms_output.put_line('feldolgozva: ' cur%rowcount); end loop; Csak a kurzort kell deklarálni, nem kell változó a kiolvasáshoz Nem kell megnyitni a kurzort A fetch automatikusan zajlik Nem kell lezárni a kurzort 53/22 B IT MAN

23 Autós példa 19. auto rsz tipus szin kor ar PL/SQL blokk írása a piros autók lekérdezésére és külön táblában eltárolására. declare x auto%rowtype; cursor piros is select * from auto where szin like 'piros%'; open piros; loop fetch piros into x; exit when piros%notfound; insert into piros_auto values (x.rsz, x.tipus, x.szin, x.kor, x.ar); end loop; close piros; 53/23 B IT MAN

24 Autós példa 20. auto rsz tipus szin kor ar PL/SQL blokk írása a piros autók lekérdezésére és külön táblában eltárolására, de: FOR ciklussal! declare cursor piros is select * from auto where szin like 'piros%'; for ps in piros loop insert into piros_auto values (ps.rsz, ps.tipus, ps.szin, ps.kor, ps.ar); end loop; 53/24 B IT MAN

25 Adatok kezelése Módosítható KURZOR SELECT utasítás végére opcionális tag: FOR UPDATE OF mezolista Módosításkor az UPDATE utasítás feltételi részében: CURRENT OF kurzornév A kurzor munkarekordjának adott mezőértékei az eredeti táblában is módosulni fognak. 53/25 B IT MAN

26 Módosítható KURZOR auto rsz tipus szin kor ar Adott színű autók árának növelése adott százalékkal. create procedure aut_arnov(szinbe in char, ert in int) is cursor cur_a is select * from auto where szin=szinbe for update of ar; a cur_a%rowtype; open cur_a; loop fetch cur_a into a; exit when cur_a%notfound; update auto set ar=a.ar*(1+ert/100) where current of cur_a; end loop; close cur_a; aut_arnov('piros', 10); 53/26 B IT MAN

27 Módosítható KURZOR auto rsz tipus szin kor ar Adott színű autók árának növelése adott százalékkal, függvénnyel, for ciklussal. create or replace function aut_arnov2 (szinbe in char, ert in int) return number as cursor cur_a is select * from auto where szin=szinbe for update of ar; db number := 0; for cv in cur_a loop update auto set ar=cv.ar*(1+ert/100) where current of cur_a; db:=db+1; end loop; return db; select aut_arnov2('piros', 10) from dual; declare x number(6) := 0; x:=aut_arnov2('piros', 10); dbms_output.put_line(x); 53/27 B IT MAN

28 Módosítható KURZOR auto rsz tipus szin kor ar Adott színű autók árának növelése adott százalékkal. create or replace procedure aut_arnov3 (szinbe in char, ert in int) is cursor cur_a is select * from auto where szin=szinbe for update of ar; db number:=0; for cv in cur_a loop update auto set ar=cv.ar*(1+ert/100) where current of cur_a; db:=cur_a%rowcount; end loop; dbms_output.put_line('árváltozás: ' db); aut_arnov3('piros', 10); 53/28 B IT MAN

29 A PL/SQL alapjai Adatok kezelése Kurzorok Hibakezelés 53/29 B IT MAN

30 PL/SQL blokkok hibakezelése Deklarációs rész Végrehajtási rész (kód rész) Hibakezelő rész DECLARE BEGIN EXCEPTION END; 53/30 B IT MAN

31 PL/SQL blokkok hibakezelése A futási időben bekövetkező hibák hibaüzeneteket váltanak ki A hibák lekezelésére vannak beépített (előre definiált) hiba típusok, de írhatunk saját (felhasználó által definiált) típusokat is. Minden hibának van kódja és szövege, pl: ORA NO_DATA_FOUND ORA INVALID_NUMBER A lekezelt hibákat kivételeknek hívjuk, emiatt nevezik a hibakezelést kivételkezelésnek is. 53/31 B IT MAN

32 Kivételek típusai Előre definiált beépített kivételek Az általában előforduló hibákra vannak kivételek Definiálható beépített kivételek Ugyanúgy működnek, mint az előre definiált hibák, de a felhasználó alakítja ki őket Hibakódjuk és között lehet, szövegük megadható Meghívásuk: raise_application_error eljárással Speciális esetekhez, program magyarításhoz Felhasználói kivételek Nem hibának tűnnek, hanem felhasználói üzenetnek 53/32 B IT MAN

33 Autós példa 14. auto rsz tipus szin kor ar Próbáljuk meg lekérdezni az ABC-500 rendszámú autó típusát. Nézzük mi történik, ha nincs ilyen rendszám! declare x auto.tipus%type; select tipus into x from auto where rsz='abc-500'; dbms_output.put_line('az autó típusa: ' x); 53/33 B IT MAN

34 Autós példa 14. auto rsz tipus szin kor ar Próbáljuk meg lekérdezni az ABC-500 rendszámú autó típusát. Ha nincs ilyen rekord a táblában, figyelmeztessük a felhasználót. declare x auto.tipus%type; select tipus into x from auto where rsz='abc-500'; dbms_output.put_line('az autó típusa: ' x); exception when no_data_found then dbms_output.put_line('nincs ilyen rendszám!'); 53/34 B IT MAN

35 Autós példa 16. auto rsz tipus szin kor ar Próbáljuk meg lekérdezni, és egy táblába beszúrni a piros autó adatait. Nézzük mi történik, ha több ilyen rekord is van a táblában. declare x auto%rowtype; select * into x from auto where szin like 'piros%'; insert into piros_auto values(x.rsz, x.tipus, x.szin, x.kor, x.ar); 53/35 B IT MAN

36 Autós példa 16. auto rsz tipus szin kor ar Próbáljuk meg lekérdezni, és egy táblába beszúrni a piros autó adatait. Ha több ilyen rekord is van a táblában, figyelmeztessük a felhasználót. declare x auto%rowtype; select * into x from auto where szin like 'piros%'; insert into piros_auto values(x.rsz, x.tipus, x.szin, x.kor, x.ar); exception when too_many_rows then dbms_output.put_line('több piros autó is van!'); 53/36 B IT MAN

37 Előre definiált hibák kezelése declare v_ber melos.ber%type; v_veznev melos.vezeteknev%type; v_kernev melos.keresztnev%type; v_ber := ; select vezeteknev, keresztnev into v_veznev, v_kernev from melos where ber = v_ber; dbms_output.put_line(v_veznev ' ' v_kernev); exception when no_data_found then dbms_output.put_line('nincs ilyen fizetés'); when too_many_rows then dbms_output.put_line('több embernek is ez a fizetése'); when others then dbms_output.put_line('egyéb hiba'); 53/37 B IT MAN

38 Autós példa 17. Írjunk olyan pl/sql blokkot, amely a felhasználó által definiált beépített hiba segítségével nem engedi felvinni a 20 évnél idősebb autókat. declare rsz varchar2(30) := 'SQW-123'; tipus varchar2(30) := 'skoda'; szin varchar2(30) := 'fehér'; kor number(2) := 22; ar number(8) := ; if kor not between 1 and 20 then raise_application_error (-20502, 'Hibás az autó kora!'); else insert into auto values(rsz, tipus, szin, kor, ar); end if; 53/38 B IT MAN

39 Autós példa 18. Írjunk olyan pl/sql blokkot, amely saját magunk által definiált hiba segítségével nem engedi felvinni a 20 évnél idősebb autókat. declare rsz varchar2(30) := 'SQW-123'; tipus varchar2(30) := 'skoda'; szin varchar2(30) := 'fehér'; kor number(2) := 22; ar number(8) := ; rossz_kor exception; if kor not between 1 and 20 then raise rossz_kor; else insert into auto values(rsz,tipus,szin,kor,ar); end if; exception when rossz_kor then dbms_output.put_line('hibás az autó kora'); 53/39 B IT MAN

40 A hibakezelés logikája DECLARE saját_hiba EXCEPTION; BEGIN EXCEPTION WHEN saját_hiba THEN WHEN beépített_hiba THEN WHEN OTHERS THEN END; 53/40 B IT MAN

41 Előre definiált (beépített) kivételek Hiba neve Hiba kódja access_into_null ORA case_not_found ORA collection_is_null ORA cursor_already_open ORA dup_val_on_index ORA invalid_cursor ORA invalid_number ORA login_denied ORA no_data_found ORA not_logged_on ORA program_error ORA rowtype_mismatch ORA self_is_null ORA storage_error ORA subscript_beyond_count ORA subscript_outside_limit ORA sys_invalid_rowid ORA timeout_on_resource ORA too_many_rows ORA value_error ORA zero_divide ORA /41 B IT MAN

42 Autós példa 19. Tárolt alprogram, mely töröl egy paraméterként megadott rendszámú autót, ha nincs olyan rendszám, akkor egy üzenetet ír a képernyőre! create or replace procedure del_rsz (rszb in char) as db number; h_rsz exception; select count(*) into db from auto where rsz=rszb; if db=0 then raise h_rsz; else delete from auto where rsz=rszb; end if; exception when h_rsz then dbms_output.put_line('hibás rendszám'); del_rsz( bbrbr ); end 53/42 B IT MAN

43 Autós példa 19. Tárolt alprogram, mely töröl egy paraméterként megadott rendszámú autót, ha nincs olyan rendszám, akkor egy üzenetet ír a képernyőre! create or replace procedure del_rsz (rszb in char) as delete from auto where rsz=rszb; if sql%rowcount = 0 then dbms_output.put_line('hibás rendszám'); end if; del_rsz( bbrbr ); end 53/43 B IT MAN

44 Órai feladatok 1. Kategoria Kkod Nev Termek Kategoria Tkod Nev Ar Leiras Készítsen egy TermekKategoria nevű eljárást, mely kiírja a képernyőre a termékek nevét és kategóriájuk nevét. Használjon kurzort és for ciklust. HELP: create or replace procedure tlp as cursor cur is select * from kategoria; for cv in cur loop dbms_output.put_line('név: ' cv.nev); end loop; 53/44 B IT MAN

45 Órai feladatok 2. Készítsen egy TermekAr nevű tárolt eljárást, mely egy paraméterként megadott terméknév esetén kiírja a termék árát. Használjon gyári hibakezelést. Ha nincs ilyen termék, íja ki a képernyőre (Nem létező termék: terméknév). Ha több ilyen termék is van (pl. csipsz), íja ki a képernyőre (Több ilyen nevű termék létezik: terméknév). 53/45 B IT MAN

46 Órai feladatok 2. Készítsen egy TermekAr nevű tárolt eljárást, mely egy paraméterként megadott terméknév esetén kiírja a termék árát. Használjon gyári hibakezelést. Ha nincs ilyen termék, íja ki a képernyőre (Nem létező termék: terméknév). Ha több ilyen termék is van (pl. csipsz), íja ki a képernyőre (Több ilyen nevű termék létezik: terméknév). HELP: v_ber := ; select vezeteknev, keresztnev into v_veznev, v_kernev from melos where ber = v_ber; dbms_output.put_line(v_veznev ' ' v_kernev); exception when no_data_found then dbms_output.put_line('nincs ilyen fizetés'); when too_many_rows then dbms_output.put_line('több embernek is ez a fizetése'); 53/46 B IT MAN

47 Órai feladatok 3. Készítsen egy TermekLista nevű eljárást, mely egy paraméterként megadott kategória kód esetén kiírja a képernyőre a kategóriához tartozó termékek nevét. Az eljárás bemenő paramétere legyen a kategória neve (nem a kódja!) Használjon kurzort. Készítsen kétféle változatot, az egyikben loop ciklust, a másikban for ciklust használjon. Módosítás: A for ciklusos változatot egészítse ki hibakezeléssel: ha nem létezik a megadott kategória, írja ki ennek tényét az eljárás a képernyőre. Módosítás: Hozzon létre egy hiba_naplo [szöveg, dátum, szöveg] táblát, és ne a képernyőre, hanem ebbe írja a hibát, a dátumot, és a usernevet. (Hibás kategória: kategória neve, dátum, user) 53/47 B IT MAN

48 Órai feladatok 4. Készítsen egy VasarloLista nevű eljárást, mely egy paraméterként megadott terméknév esetén kiírja a képernyőre azon vásárlók nevét, akik már vásároltak a termékből. Használjon kurzort. Módosítás: Egészítse ki az eljárást hibakezeléssel: ha nem létezik a megadott termék, írja ki ennek tényét az eljárás a képernyőre. Módosítás: Naplózza a hibát a hiba_naplo [szöveg, dátum, szöveg] táblába. (Hibás terméknév: terméknév, dátum, user) 53/48 B IT MAN

49 Órai feladatok 5. Készítsen egy Bevetel nevű függvényt, amely kiszámítja, és visszatérő értékként visszaadja a bevételt. (termékár * darab) A függvény paramétere legyen a vásárlás táblában lévő dátum és sorszám. A függvény az adott napi, adott sorszámtól kisebb sorszámú tételekből számítsa a bevételt. Használjon kurzort, melybe az adott sorszámnak eleget tevő rekordokból az ár és a darabszám kerüljön. Ciklussal összesítse a bevételt a kurzort felhasználva. Hívja meg az elkészült függvényt a select paranccsal. Módosítás: egészítse ki hibakezeléssel a függvényt. Ha nem létező dátumot adunk meg, írja ki a függvény: (Nem létező dátum: dátum!) 53/49 B IT MAN

50 Órai feladatok 6. Készítsen egy Arnovelo nevű tárolt alprogramot, mely egy paraméterként megadott kategória esetén megemeli az adott kategóriájú termékek árát egy szintén paraméterként megadott százalékkal. Az eljárás bemenő paramétere legyen a kategória neve (nem a kódja!), és a százalék értéke (pl. 10%). Használjon módosítható kurzort. 53/50 B IT MAN

51 Órai feladatok 7. Készítsen egy UjTermek nevű tárolt eljárást, mely: - az egyes mezők értékét paraméterként kapja meg, - saját hibát dobva figyelmeztet (képernyőüzenettel), ha nem létező kategóriájú terméket akarnánk felvinni, - saját hibát dobva figyelmeztet (képernyőüzenettel), ha már létező azonosítójú terméket akarnánk felvinni. 53/51 B IT MAN

52 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 ( 53/52 B IT MAN

53 VÉGE VÉGE 53/53 B IT MAN

Adatbázis Rendszerek II. 5. PLSQL Csomagok 16/1B IT MAN

Adatbázis Rendszerek II. 5. PLSQL Csomagok 16/1B IT MAN Adatbázis Rendszerek II. 5. PLSQL Csomagok 16/1B IT MAN B IT v: 2016.03.03 MAN Csomagok A DBMS csomagok a PL/SQL alkalmazások fejlesztését segítik, bennük tároljuk a létrehozott programok kódjait. A specifikációs

Részletesebben

B IT MAN 65/1. Adatbázis Rendszerek II. Ellenőrző kérdések APLSQL B IT MAN. v:

B IT MAN 65/1. Adatbázis Rendszerek II. Ellenőrző kérdések APLSQL B IT MAN. v: B IT MAN 65/1 Adatbázis Rendszerek II. Ellenőrző kérdések APLSQL B IT MAN v: 2016.02.27 Ellenőrző kérdések 1. B IT MAN 65/2 1. Egy bemenő paraméter nélküli tárolt rutin visszaad egy értéket. Ez a rutin:

Részletesebben

Adatbázis Rendszerek II. 2. Ea: Gyakorló környezet

Adatbázis Rendszerek II. 2. Ea: Gyakorló környezet Adatbázis Rendszerek II. 2. Ea: Gyakorló környezet 26/1 B IT v: 2018.02.21 MAN Gyakorló környezet apex.oracle.com/en/ 26/2 A regisztrációs folyamat 26/3 26/4 26/5 26/6 26/7 26/8 26/9 26/10 26/11 Feladatok

Részletesebben

Adatbázis Rendszerek II. 2. Gyakorló környezet

Adatbázis Rendszerek II. 2. Gyakorló környezet Adatbázis Rendszerek II. 2. Gyakorló környezet 37/1 B IT v: 2017.02.11 MAN Gyakorló környezet Géptermek 37/2 Jelszó váltás 1 2 3 4 37/3 Gyakorló környezet II. apex.oracle.com/en/ 37/4 A regisztrációs folyamat

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

Összefoglaló. <variable_name> [IN OUT IN OUT] <data_type> [:=<default_value>] ... <label_name>: <statements>... GOTO <label_name>;...

Összefoglaló. <variable_name> [IN OUT IN OUT] <data_type> [:=<default_value>] ... <label_name>: <statements>... GOTO <label_name>;... Összefoglaló PL/SQL alapok: Minden utasítást pontos vesszővel zárunk le. 1. Változó deklaráció: [:=]; 2. Paraméter megadása (adattípusra itt nem lehet megszorítá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

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

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

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

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

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

B I T M A N B I v: T 2015.02.22 M A N Adatbázis Rendszerek II. 2. Gy: PLSQL 1. B I v: T 2015.02.22 M A N 1/75 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 Tárolt eljárások

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. 8. Gyakorló környezet

Adatbázis Rendszerek II. 8. Gyakorló környezet Adatbázis Rendszerek II. 8. Gyakorló környezet 1/24 B IT v: 2017.10.26 MAN Gyakorló környezet Géptermek 193.6.5.58:8080/apex H16_neptunkód ADMIN neptunkód 2/24 Jelszó váltás 1 2 3 4 3/24 Gyakorló környezet

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

Adatbázis Rendszerek II. 3. PLSQL alapok 92/1B IT MAN

Adatbázis Rendszerek II. 3. PLSQL alapok 92/1B IT MAN Adatbázis Rendszerek II. 3. PLSQL alapok 92/1B IT MAN B IT v: 2017.03.02 MAN 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 92/2 B IT MAN A

Részletesebben

Tranzakciókezelés PL/SQL-ben

Tranzakciókezelés PL/SQL-ben Tranzakciókezelés PL/SQL-ben ACID tulajdonságok: Tranzakció Atomosság, Konzisztencia, Izoláció, Tartósság A tranzakció állhat: - Több DML utasításból - Egy DDL utasításból A tranzakció kezdete az első

Részletesebben

Együttes hozzárendelés

Együttes hozzárendelés Együttes hozzárendelés Együttes hozzárendelés Hozzárendelés: az a tevékenységet, amikor egy PL/SQLváltozónak egy SQL-utasításban adunk értéket. Együttes hozzárendelés: Egy kollekció minden elemének egyszerre

Részletesebben

Adatbázis rendszerek SQL nyomkövetés

Adatbázis rendszerek SQL nyomkövetés Adatbázis rendszerek 1. 12. SQL nyomkövetés 1/32 B ITv: MAN 2017.10.26 Nyomkövetési feladat 2/32 Gyakorló feladatok Termék-Vásárlás-Vásárló Oktató-Tantárgy-Hallgató 3/32 Gyakorló feladat: Termék-Vásárlás-Vásárló

Részletesebben

Adatbázis Rendszerek I. 10. SQL alapok (DML esettanulmány)

Adatbázis Rendszerek I. 10. SQL alapok (DML esettanulmány) Adatbázis Rendszerek I. 10. SQL alapok (DML esettanulmány) 23/1 B IT v: 2018.10.31 MAN DML adatokon műveletet végző utasítások DML Data Manipulation Language Rekordok (sorok) beszúrása (felvitele) Mezők

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

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

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

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

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

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

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

Csomag. Adatbázis-objektum Programozási eszközök gyűjteménye Két részből áll. specifikáció törzs (opcionális)

Csomag. Adatbázis-objektum Programozási eszközök gyűjteménye Két részből áll. specifikáció törzs (opcionális) Csomagok Csomag Adatbázis-objektum Programozási eszközök gyűjteménye Két részből áll specifikáció törzs (opcionális) Csomagspecifikáció CREATE [OR REPLACE] PACKAGE csomagnév [AUTHID {DEFINER CURRENT_USER}]

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

Táblakezelés: Open SQL Internal table. Tarcsi Ádám: Az SAP programozása 1.

Táblakezelés: Open SQL Internal table. Tarcsi Ádám: Az SAP programozása 1. Táblakezelés: Open SQL Internal table Tarcsi Ádám: Az SAP programozása 1. OPEN SQL Tarcsi Ádám, ELTE SAP Excellence Center: SAP programozás oktatóanyag 2 Open SQL Az Open SQL kulcsszavai: SELECT INSERT

Részletesebben

Adatbázisok-I. előadás dr. Hajas Csilla (ELTE IK)

Adatbázisok-I. előadás dr. Hajas Csilla (ELTE IK) Adatbázisok-I. előadás dr. Hajas Csilla (ELTE IK) http://sila.hajas.elte.hu/ 7.ea: SQL/PSM Oracle PL/SQL Az előadások Ullman-Widom: Adatbázisrendszerek Alapvetés alapján készültek, forrás: http://infolab.stanford.edu/~ullman/dscb.html

Részletesebben

SQL DDL-2 (aktív elemek) triggerek

SQL DDL-2 (aktív elemek) triggerek SQL DDL-2 (aktív elemek) triggerek Tankönyv: Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009 7.fej.: Megszorítások és triggerek 7.4. Önálló megszorítások 7.5. Triggerek

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

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

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

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

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

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

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

SQL haladó. Külső összekapcsolások, Csoportosítás/Összesítés, Beszúrás/Törlés/Módosítás, Táblák létrehozása/kulcs megszorítások

SQL haladó. Külső összekapcsolások, Csoportosítás/Összesítés, Beszúrás/Törlés/Módosítás, Táblák létrehozása/kulcs megszorítások SQL haladó Külső összekapcsolások, Csoportosítás/Összesítés, Beszúrás/Törlés/Módosítás, Táblák létrehozása/kulcs megszorítások 1 Külső összekapcsolás Összekapcsoljuk R és S relációkat: R C S. R azon sorait,

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

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

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

Bevezetés: az SQL-be

Bevezetés: az SQL-be 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, adattípusok, kulcsok megadása 02B_BevSQLsemak

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á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

8-9.előadás: Adatbázisok-I. dr. Hajas Csilla (ELTE IK)

8-9.előadás: Adatbázisok-I. dr. Hajas Csilla (ELTE IK) 8-9.előadás: Adatbázisok-I. dr. Hajas Csilla (ELTE IK) http://sila.hajas.elte.hu/ Gyak: Oracle PL/SQL Tk-ben: SQL/PSM 9.3. Az SQL és a befogadó nyelv közötti felület (sormutatók) 9.4. SQL/PSM Sémában tárolt

Részletesebben

SQL/PSM kurzorok rész

SQL/PSM kurzorok rész SQL/PSM kurzorok --- 2.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 Sémában

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á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

Tankönyvben: SQL/PSM Gyakorlaton: Oracle PL/SQL

Tankönyvben: SQL/PSM Gyakorlaton: Oracle PL/SQL Tankönyvben: SQL/PSM Gyakorlaton: Oracle PL/SQL Tankönyv: Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiad, 2009 Motiváció: 10.2. Rekurzió SQL-ben, az Eljut -feladat Oracle-ben 9.3.

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

Adatbázisok. 8. gyakorlat. SQL: CREATE TABLE, aktualizálás (INSERT, UPDATE, DELETE), SELECT október október 26. Adatbázisok 1 / 17

Adatbázisok. 8. gyakorlat. SQL: CREATE TABLE, aktualizálás (INSERT, UPDATE, DELETE), SELECT október október 26. Adatbázisok 1 / 17 Adatbázisok 8. gyakorlat SQL: CREATE TABLE, aktualizálás (INSERT, UPDATE, DELETE), SELECT 2015. október 26. 2015. október 26. Adatbázisok 1 / 17 SQL nyelv Structured Query Language Struktúrált lekérdez

Részletesebben

Adatbázis Rendszerek I. 9. SQL alapok (DDL esettanulmány)

Adatbázis Rendszerek I. 9. SQL alapok (DDL esettanulmány) Adatbázis Rendszerek I. 9. SQL alapok (DDL esettanulmány) 41/1 B IT v: 2017.10.30 MAN DDL Adatstruktúra definiáló utasítások DDL Data Definition Language Adatszerkezetek (elsősorban táblák) létrehozása,

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

SQL PÉLDATÁR. készült a PTE TTK Iskolai informatika III. kurzus teljesítésére

SQL PÉLDATÁR. készült a PTE TTK Iskolai informatika III. kurzus teljesítésére SQL PÉLDATÁR készült a PTE TTK Iskolai informatika III. kurzus teljesítésére PTE TTK Czimmermann Gergely MA matematika informatika tanár szakos hallgató 2017 Tartalomjegyzék 1. Adatleíró műveletek... 3

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

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

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

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

Triggerek. Olyan névvel ellátott adatbázisobjektumok, amelyek eseményorientált feldolgozást tesznek lehetővé

Triggerek. Olyan névvel ellátott adatbázisobjektumok, amelyek eseményorientált feldolgozást tesznek lehetővé Triggerek Triggerek Olyan névvel ellátott adatbázisobjektumok, amelyek eseményorientált feldolgozást tesznek lehetővé egy eseményre válaszul futnak le a triggernevek külön névteret alkotnak Esemény bekövetkezésének

Részletesebben

Informatikai képzés Információs rendszerek dr. Hajas Csilla (ELTE IK)

Informatikai képzés Információs rendszerek dr. Hajas Csilla (ELTE IK) Informatikai képzés Információs rendszerek dr. Hajas Csilla (ELTE IK) http://sila.hajas.elte.hu/ 5.hét: SQL áttekintés, táblák létrehozása és adatok felvitele Az előadások Ullman-Widom: Adatbázisrendszerek

Részletesebben

SQL. 1.rész. 1.elıadás // Adatbázisok-1 elıadás // Ullman-Widom (Stanford) tananyaga alapján // Hajas Csilla (ELTE IK) 1

SQL. 1.rész. 1.elıadás // Adatbázisok-1 elıadás // Ullman-Widom (Stanford) tananyaga alapján // Hajas Csilla (ELTE IK) 1 SQL 1.rész 1.elıadás // Adatbázisok-1 elıadás // Ullman-Widom (Stanford) tananyaga alapján // Hajas Csilla (ELTE IK) 1 SQL története, szabványok Szabvány adatbázis-kezelő nyelv: SQL SQL (angol kiejtésben

Részletesebben

Adatbázisok elmélete 9. előadás

Adatbázisok elmélete 9. előadás Adatbázisok elmélete 9. előadás Katona Gyula Y. Budapesti Műszaki és Gazdaságtudományi Egyetem Számítástudományi Tsz. I. B. 137/b kiskat@cs.bme.hu http://www.cs.bme.hu/ kiskat 2005 ADATBÁZISOK ELMÉLETE

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

SQL jogosultság-kezelés. Privilégiumok Grant és Revoke Grant Diagrammok

SQL jogosultság-kezelés. Privilégiumok Grant és Revoke Grant Diagrammok SQL jogosultság-kezelés Privilégiumok Grant és Revoke Grant Diagrammok 1 Jogosultság-kezelés Egy fájlrendszer általában jogosultságokat rendel az általa kezelt objektumokhoz. Tipikusan olvasható, írható,

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

SQL DDL-1: táblák és megszorítások

SQL DDL-1: táblák és megszorítások SQL DDL-1: táblák és megszorítások 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 7.1. Kulcsok és idegen kulcsok 7.2. Értékekre

Részletesebben

AB1 ZH mintafeladatok. 6. Minősítse az állításokat! I-igaz, H-hamis

AB1 ZH mintafeladatok. 6. Minősítse az állításokat! I-igaz, H-hamis AB1 ZH mintafeladatok 1. Töltse ki, és egészítse ki! Matematikai formalizmus arra, hogy hogyan építhetünk új relációkat a régi relációkból. Az adatoknak egy jól strukturált halmaza, amelyből információ

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

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

Adatbázisok elmélete 9. előadás

Adatbázisok elmélete 9. előadás Adatbázisok elmélete 9. előadás Katona Gyula Y. Budapesti Műszaki és Gazdaságtudományi Egyetem Számítástudományi Tsz. I. B. 137/b kiskat@cs.bme.hu http://www.cs.bme.hu/ kiskat 2005 ADATBÁZISOK ELMÉLETE

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

SQL OO elemei aktív komponensek

SQL OO elemei aktív komponensek Adatbázisok MSc 7. téma SQL OO elemei aktív komponensek UDT aktív elemek Az UDT egyik fontos jellemzője az egységbezárás, mely az állapot és viselkedés együttesét jelenti mezők UDT metódusok Az SQL szabvány

Részletesebben

Karakterkészlet. A kis- és nagybetűk nem különböznek, a sztringliterálok belsejét leszámítva!

Karakterkészlet. A kis- és nagybetűk nem különböznek, a sztringliterálok belsejét leszámítva! A PL/SQL alapelemei Karakterkészlet Az angol ABC kis- és nagybetűi: a-z, A-Z Számjegyek: 0-9 Egyéb karakterek: ( ) + - * / < > =! ~ ^ ; :. ' @ %, " # $ & _ { }? [ ] Szóköz, tabulátor, kocsivissza A kis-

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

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

Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) ABR 2( Adatbázisrendszerek 2) 3. Előadás: Tárolt eljárások (folytatás) Nézetek Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) ABR 2( Adatbázisrendszerek 2) 3. Előadás: Tárolt eljárások (folytatás) Nézetek 1 Kurzorok A kurzorok használata támogatott a tárolt rutinok, triggerek

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

Nézetek és indexek. AB1_06C_Nézetek_Indexek - Adatbázisok-1 EA (Hajas Csilla, ELTE IK) - J.D. Ullman elıadásai alapján

Nézetek és indexek. AB1_06C_Nézetek_Indexek - Adatbázisok-1 EA (Hajas Csilla, ELTE IK) - J.D. Ullman elıadásai alapján Nézetek és indexek Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009 8.1. Nézettáblák 8.2. Adatok módosítása nézettáblákon keresztül 8.3. Indexek az SQL-ben 8.4. Indexek

Részletesebben

XML adatkezelés. 11. témakör. Az XQuery nyelv alapjai. XQuery. XQuery célja egy imperatív lekérdező nyelv biztosítása. XQuery.

XML adatkezelés. 11. témakör. Az XQuery nyelv alapjai. XQuery. XQuery célja egy imperatív lekérdező nyelv biztosítása. XQuery. XML adatkezelés 11. témakör Az nyelv alapjai ME GEIAL dr Kovács Lászl szló célja egy imperatív lekérdező nyelv biztosítása SQL XPath XSLT (nem XML) XDM Forrás XML processzor Eredmény XML 1 jellemzői --

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

Adatbázis-kezelés. 3. Ea: Viszonyított betűszámtan (2013) Relációs algebra alapok (átgondolt verzió) v: 2015.02.15 Szűcs Miklós - ME, ÁIT. 1.

Adatbázis-kezelés. 3. Ea: Viszonyított betűszámtan (2013) Relációs algebra alapok (átgondolt verzió) v: 2015.02.15 Szűcs Miklós - ME, ÁIT. 1. Adatbázis-kezelés 3. Ea: Viszonyított betűszámtan (2013) Relációs algebra alapok (átgondolt verzió) v: 2015.02.15 Szűcs Miklós - ME, ÁIT. 1.o Témakörök Relációs algebra Ellenőrző kérdések 2.o Relációs

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

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

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

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

OO PDO. Tehát PDO használatával, könnyen átállhatunk egy másik adatbáziskezelőre, anélkül hogy a kódot teljes egészében újraírnánk.

OO PDO. Tehát PDO használatával, könnyen átállhatunk egy másik adatbáziskezelőre, anélkül hogy a kódot teljes egészében újraírnánk. OO PDO PDO VS MYSQLi VS MYSQL ================================================================================ A PHP mysql metódusai elavultak, helyette lehet hazsnálni a MYSQLi metódusokat, amelyek szinte

Részletesebben

Adatbázisok II. Jánosi-Rancz Katalin Tünde tsuto@ms.sapientia.ro 327A

Adatbázisok II. Jánosi-Rancz Katalin Tünde tsuto@ms.sapientia.ro 327A Adatbázisok II. 7 Jánosi-Rancz Katalin Tünde tsuto@ms.sapientia.ro 327A Oracle XML 7 Oracle XML DB Az XML adatok kezelésére az Oracle egy külön komponenst készített, az Oracle XML DB-t. Az XML adatok tárolására

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

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ázis-lekérdezés. Az SQL nyelv. Makány György

Adatbázis-lekérdezés. Az SQL nyelv. Makány György Adatbázis-lekérdezés Az SQL nyelv Makány György SQL (Structured Query Language=struktúrált lekérdező nyelv): relációs adatbázisok adatainak visszakeresésére, frissítésére, kezelésére szolgáló nyelv. Születési

Részletesebben

ELTE SAP Excellence Center Oktatóanyag 1

ELTE SAP Excellence Center Oktatóanyag 1 ELTE SAP Excellence Center Oktatóanyag 1 ELTE SAP Excellence Center Oktatóanyag 2 ELTE SAP Excellence Center Oktatóanyag 3 A felhasználók három különböző képernyővel találkoznak Listák az adatmegjelenítéshez

Részletesebben

Java és web programozás

Java és web programozás Budapesti M szaki Egyetem 2013. november 20. 10. El adás SQLite SQLite: Adatbázis kezel rendszer SQL standardokat nagyrészt követi Nagyon elterjedt, pl böngész kben is használt Nehéz olyan programnyelvet

Részletesebben

Adatbázisok elmélete 10. előadás

Adatbázisok elmélete 10. előadás Adatbázisok elmélete 10. előadás Katona Gyula Y. Budapesti Műszaki és Gazdaságtudományi Egyetem Számítástudományi Tsz. I. B. 137/b kiskat@cs.bme.hu http://www.cs.bme.hu/ kiskat 2004 ADATBÁZISOK ELMÉLETE

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

Objektum Orientált Programozás. 11. Kivételkezelés 44/1B IT MAN

Objektum Orientált Programozás. 11. Kivételkezelés 44/1B IT MAN Objektum Orientált Programozás 11. Kivételkezelés 44/1B IT MAN B IT v: 2016.05.03 MAN Pici elmélet A Java kivételkezelésének célja a programfutás során keletkezett hibák kiszűrése és megfelelő kezelése.

Részletesebben

Adabáziselérés ODBC-n keresztül utasításokkal C#-ban

Adabáziselérés ODBC-n keresztül utasításokkal C#-ban Adabáziselérés ODBC-n keresztül utasításokkal C#-ban 1. Előkészítés Access adatbázis lemásolása, ODBC DSN létrehozása Másoljuk le az alábbiakat: Mit Honnan Hova list.mdb p:\johanyák Csaba\Vizualis programozas\data\

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 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

Pénzügyi algoritmusok

Pénzügyi algoritmusok Pénzügyi algoritmusok A C++ programozás alapjai Tömbök (3. rész) Konstansok Kivételkezelés Tömbök 3. Többdimenziós tömbök Többdimenziós tömbök int a; Többdimenziós tömbök int a[5]; Többdimenziós tömbök

Részletesebben