Adatbázis Rendszerek II. 3. PLSQL alapok 92/1B IT MAN
|
|
- Edit Barna
- 6 évvel ezelőtt
- Látták:
Átírás
1 Adatbázis Rendszerek II. 3. PLSQL alapok 92/1B IT MAN B IT v: MAN
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 92/2 B IT MAN
3 A PL/SQL alapjai PL/SQL: Procedurális nyelv (Procedural Language for SQL) Kombinálja az SQL adatmanipulációt a procedurális nyelvi feldolgozással. Ada-szerű szintakszis 92/3 B IT MAN
4 PL/SQL Blokkszerkezetű nyelv A következő eszközökkel egészíti ki az SQL-t: változók és típusok vezérlési szerkezetek alprogramok és csomagok kurzorok és kurzorváltozók kivételkezelés objektumorientált eszközök 92/4 B IT MAN
5 PL/SQL blokk Deklarációs rész Végrehajtási rész (kód rész) Hibakezelő rész DECLARE BEGIN EXCEPTION END; 92/5 B IT MAN
6 PL/SQL blokk típusok 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. 92/6 B IT MAN
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; 92/7 B IT MAN
8 A PL/SQL alapjai korok sugar terulet Névtelen blokk: declare pi constant NUMBER(9,7) := ; sugar INTEGER(5); terulet NUMBER(14,2); begin sugar := 3; Változó deklarációk Utasítások terulet := pi * power(sugar, 2); INSERT INTO korok VALUES (sugar, terulet); end; 92/8 B IT MAN
9 A PL/SQL alapjai <<korok_beszurasa>> Nevesített blokk, címkével declare pi constant NUMBER(9,7) := ; Deklarációk terulet NUMBER(14,2); cursor meret_cursor is SELECT * FROM meretek; meret meret_cursor%rowtype; begin open meret_cursor; loop Utasítások 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; korok sugar terulet 92/9 B IT MAN
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 92/10 B IT MAN
11 A PL/SQL alapjai Utasítások Üres utasítás: null; Értékadó utasítás: x := 33; Ugró utasítás: goto címke; <<címke>> Elágazások: if-then-else-end if, case Ciklusok: loop 92/11 B IT MAN
12 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 DECLARE BEGIN EXCEPTION END; 92/12 B IT MAN
13 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/13 B IT MAN
14 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ó) 92/14 B IT MAN
15 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 tizedesjegyek darabszáma CHAR: Szöveges érték, opcionálisan kijelölhető a karakterek darabszáma DATE: dátum típus BOOLEAN: logikai adattípus Sok további típus 92/15 B IT MAN
16 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; 92/16 B IT MAN
17 DECLARE (példák) Típusmásolással létrehozott változók: Oszlopváltozó: DECLARE v1 tábla.mező%type -- v1 ember.kod%type; A megadott tábla megadott mezőjének típusát veszi fel A3 Kovács B 14 S1 Sorváltozó: DECLARE v2 tábla%rowtype -- v2 ember%rowtype; A megadott tábla rekordszerkezetével megegyező típusú változó Hivatkozás egy elemére: v2.rendszam Kovács B 92/17 B IT MAN A3 14 S1
18 DECLARE (példák) declare e_r ember%rowtype; begin A3 Kovács B 14 select * into e_r from ember where kod = 'A3'; dbms_output.put_line(e_r.nev); end; S1 DBMS_OUTPUT.PUTLINE Szöveg kiírása a konzolra. 92/18 B IT MAN
19 A DBMS_OUTPUT csomag A PL/SQL nem tartalmaz I/O utasításokat. Megalkották a DBMS_OUTPUT csomagot, melyben van néhány I/O utasítás. A PUT_LINE utasítás segítségével üzenetet helyezhetünk el egy belső pufferbe. A puffer tartalma megjelenik a képernyőn, ha a SERVEROUTPUT környezeti változó be van kapcsolva: SET SERVEROUTPUT ON 92/19 B IT MAN
20 Autós példa Adott a következő tábla, a feladatok ezen értelmezettek: rsz tipus auto szín kor ar 92/20 B IT MAN
21 Autós példa 1. auto rsz tipus szin kor ar 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; 92/21 B IT MAN
22 Autós példa 2. auto rsz tipus szin kor ar 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; 92/22 B IT MAN
23 Autós példa 3. auto rsz tipus szin kor ar 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; 92/23 B IT MAN
24 Autós példa 4. auto rsz tipus szin kor ar 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; naplo adat datum szemely 92/24 B IT MAN
25 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/25 B IT MAN
26 DBMS_OUTPUT A DBMS_OUTPUT egy ún. Oracle csomag, melyben I/O utasítások találhatók, pl. beolvasás, kiíratás képernyőre A csomag utasításaival lehet üzenetet küldeni a felhasználónak tárolt eljárásból, triggerből. 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 92/26 B IT MAN
27 DBMS_OUTPUT (Példa) SET SERVEROUTPUT ON ACCEPT nev PROMPT 'Kérem adja meg a nevét: ' DECLARE szoveg varchar2(50); BEGIN szoveg := CONCAT('&nev',' sikeresen végrehajtotta a programot!'); DBMS_OUTPUT.PUT_LINE (szoveg); END; APEX felületen nem működik! szoveg := nev ' sikeresen '; 92/27 B IT MAN
28 Autós példa 5. auto rsz tipus szin kor ar 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; 92/28 B IT MAN
29 Autós példa 6. auto rsz tipus szin kor ar 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; AltGr + W 92/29 B IT MAN
30 A PL/SQL alapjai A PL/SQL alapjai Változók DBMS_OUTPUT Eljárások, függvények Vezérlési szerkezetek Tömbök Tárolt rutinok kezelése 92/30 B IT MAN
31 Autós példa 7. auto rsz tipus szin kor ar 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; 92/31 B IT MAN
32 Autós példa 8. auto rsz tipus szin kor ar 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; 92/32 B IT MAN
33 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; 92/33 B IT MAN
34 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; 92/34 B IT MAN
35 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 return x+5; end; declare x number(6) := 12; begin x := novel5(13); dbms_output.put_line(x); end; 92/35 B IT MAN
36 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; 92/36 B IT MAN
37 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; begin novelot(27); end; 92/37 B IT MAN
38 Példa 13. auto rsz tipus szin kor ar 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 92/38 B IT MAN
39 Példa 13b. auto rsz tipus szin kor ar 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 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; 92/39 B IT MAN
40 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/40 B IT MAN
41 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; 92/41 B IT MAN
42 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; 92/42 B IT MAN
43 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; begin rsz_tip('aaa100'); end; begin rsz_tip('jrz932'); end; 92/43 B IT MAN
44 IF (Példa) Példa logikai változó kezelésére. create or replace procedure logprb is lv boolean := true; begin lv := false; if lv then dbms_output.put_line('igaz'); else dbms_output.put_line('hamis'); end if; end; Fontos! A dbms_output.put_line(lv) utasítás hibás: ORA-00900: invalid SQL statement Ezért nem lehet logikai visszatérő értékű függvényt a select paranccsal hívni! 92/44 B IT MAN
45 Vezérlési szerkezetek CASE CASE szelektor WHEN {kifejezés feltétel} THEN eredmény WHEN {kifejezés feltétel} THEN eredmény ELSE eredmény END CASE; 92/45 B IT MAN
46 CASE (Példa) create or replace procedure ma as dayname varchar2(20); napnev varchar2(20); begin select rtrim(to_char(sysdate,'day')) into dayname from dual; case dayname when 'Monday' then napnev := 'Hétfő'; when 'Tuesday' then napnev := 'Kedd'; when 'Wednesday' then napnev := 'Szerda'; when 'Thursday' then napnev := 'Csütörtök'; when 'Friday' then napnev := 'Péntek'; when 'Saturday' then napnev := 'Szombat'; else napnev := 'Vasárnap'; end case; dbms_output.put_line('ma ' napnev ' van.'); end; 92/46 B IT MAN
47 CASE (Példa) create or replace procedure ma as dayname varchar2(20); napnev varchar2(20):='xxx'; BEGIN select rtrim(to_char(sysdate,'day')) into dayname from dual; napnev:= CASE dayname WHEN 'Monday' THEN 'Hétfő' WHEN 'Tuesday' THEN 'Kedd' WHEN 'Wednesday' THEN 'Szerda' WHEN 'Thursday' THEN 'Csütörtök' WHEN 'Friday' THEN 'Péntek' WHEN 'Saturday' THEN 'Szombat' else 'Vasárnap' END; dbms_output.put_line('ma ' napnev ' van.'); 92/47 B IT MAN END;
48 Vezérlési szerkezetek - Ciklusok Alap ciklus (LOOP ciklus) WHILE ciklus FOR ciklus 92/48 B IT MAN
49 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 92/49 B IT MAN
50 Loop (Példa) declare 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; 92/50 B IT MAN
51 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 92/51 B IT MAN
52 While példák Forráskód Create procedure wp_1 as i integer; Begin i := 1; WHILE i < 1 LOOP i := i + 1; dbms_output.put_line(i); END LOOP; dbms_output.put_line('kész'); End; Forráskód Create procedure wp_2 as i integer; Begin i := 1; WHILE i < 60 LOOP i := (i + 1) MOD 60; dbms_output.put_line(i); END LOOP; dbms_output.put_line('kész'); End; Egyszer sem fut le. Végtelen ciklus. 92/52 B IT MAN
53 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 END LOOP x := x + i; -- Eredmény: x = 55 ( =55) 92/53 B IT MAN
54 For (példák) Forráskód create or replace procedure fp_1 as x int := 0; Begin FOR i IN LOOP x := x + i; END LOOP; dbms_output.put_line('az összeg: ' x); End; Forráskód create or replace procedure fp_1 as x int := 0; Begin FOR i IN LOOP x := x + i; if x = 20 then exit; end if; END LOOP; dbms_output.put_line('az összeg: ' x); 92/54 End; B IT MAN
55 For (példa) Forráskód create or replace procedure fp_1 as x int := 0; Begin FOR i IN LOOP x := x + i; if x = 20 then goto c1; end if; END LOOP; <<c1>> dbms_output.put_line('az összeg: ' x); End; 92/55 B IT MAN
56 For (példa) FOR szam IN LOOP INSERT INTO gyokok VALUES (szam, SQRT(szam)); END LOOP; 92/56 B IT MAN
57 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/57 B IT MAN
58 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; 92/58 B IT MAN
59 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; 92/59 B IT MAN
60 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; 92/60 B IT MAN
61 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/61 B IT MAN
62 Tárolt alprogramok létrehozása Szövegszerkesztő Figyelmeztetés: A függvény létrehozása fordítási hibákkal fejeződött be. Show errors; Szerkesztés 1 2 Text fájl Tárolás az adatbázisban Forráskód Fordítás P-kód Az eljárás létrejött. Futtatás 92/62 B IT MAN
63 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; 92/63 B IT MAN
64 Tárolt rutinok kezelése SELECT * FROM ALL_OBJECTS WHERE OBJECT_TYPE IN ('FUNCTION','PROCEDURE','PACKAGE') 92/64 B IT MAN
65 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; 92/65 B IT MAN
66 Alprogramok paraméterei IN paraméter alapértelmezett OUT paraméter visszatérő értékhez IN OUT 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; 92/66 B IT MAN
67 Alprogramok paraméterei Példa IN és OUT paraméterre create 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; 92/67 B IT MAN
68 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; 92/68 B IT MAN
69 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 begin torol(10); end; IN és OUT paraméterek esetén: END; declare vp int; begin negyzet(5, vp); dbms_output.put_line(vp); end; 92/69 B IT MAN
70 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; Ha a függvény végrehajtási részében DML művelet van, ezt a megoldást kell használni. 92/70 B IT MAN
71 Órai feladatok Hozza létre a MiniBolt adatbázist: Készítse el a táblákat Töltse fel az adatokat Ellenőrizze a feltöltött adatokat Hozza létre a definiált eljárásokat és függvényeket Segítséget ebben az anyagban talál, a megadott oldalakon, pl: H 30 Ez a dia azért ilyen szörnyű színű, hogy könnyű legyen megtalálni :-) 92/71 B IT MAN
72 MiniBolt ER modell Kkod Nev Tkod Nev Ar Kategoria K-T Termek Leiras Sorszam Vasarlas Idopont Nev Darab Fkod Leiras Vasarlo V-F FizModok VID Cim 92/72 B IT MAN
73 MiniBolt struktúra modell Kategoria Kkod Nev Termek Kategoria Tkod Nev Ar Leiras Vasarlas Tkod Sorszam Idopont Darab VID Vasarlo FizModok VID Nev Cim Fizmod Fkod Leiras 92/73 B IT MAN
74 Órai feladatok 1. Hozzuk létre a táblákat: Create table Kategoria( Kkod char(3) primary key, Nev varchar(20) not null, Unique (Nev)); Select * from user_tables; Create table Termek( Tkod char(3) primary key, Nev varchar(20) not null, Ar int, Leiras varchar(20), Kategoria char(3) not null, Foreign key (Kategoria) references Kategoria(Kkod)); Create table FizModok ( Fkod int primary key, Leiras varchar(20) not null, Unique (Leiras)); 92/74 B IT MAN
75 Órai feladatok 1. Hozzuk létre a táblákat: Create table Vasarlo ( VID char(3) primary key, Nev varchar(30) not null, Cim varchar(30), Fizmod int not null, Foreign key (Fizmod) references FizModok(Fkod)); create sequence seq_v; Create table Vasarlas( Sorszam int, Idopont timestamp Default Current_Timestamp, Tkod char(3) not null, Darab int, VID char(3) not null, Primary key (Sorszam), Foreign key (Tkod) references Termek(Tkod), Foreign key (VID) references Vasarlo(VID)); 92/75 B IT MAN
76 Órai feladatok 2. Vigyük fel az alábbi rekordokat: 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 fizmodok values (1, 'Bankkártya'); insert into fizmodok values (2, 'Készpénz'); insert into fizmodok values (3, 'Átutalás'); insert into fizmodok values (4, 'Utánvét'); 92/76 B IT MAN
77 Órai feladatok 2. Vigyük fel az alábbi rekordokat: insert into Vasarlo values('v01', 'Kék Alma', 'Mc. Kék u.12',2); insert into Vasarlo values('v02', 'Zöld Gabi', 'Mc. Hó u.72',3); insert into Vasarlo values('v03', 'Feke Farkas', 'Mc.Kőu.25',1); insert into Vasarlo values('v04', 'Korcs Éva', 'Eger. Lap u.4',1); insert into Vasarlo values('v05', 'Kis Béla', 'Eger. Bé u.9',2); insert into Vasarlo values('v06', 'Kis Jenő', 'Eger. Cé u.11',3); insert into Vasarlo values('v07', 'Kis Noé', 'Eger. Cé u.11',4); insert into Vasarlo values('v08', 'Kis Tas', 'Eger. Cé u.11',1); insert into Vasarlo values('v09', 'Hó Manó', 'Nyék. Tóu.74',2); insert into Vasarlo values('v10', 'Ká Rozi', 'Nyék. Káu.5',3); insert into Vasarlo values('v11', 'Víz Jenő', 'Mc. Útu.39',3); 92/77 B IT MAN
78 Órai feladatok 2. Vigyük 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'); 92/78 B IT MAN
79 Órai feladatok 2. Vigyük fel az alábbi rekordokat: insert into Vasarlas (Sorszam, Tkod, Darab, VID) values(seq_v.nextval, 't14', 1, 'v06'); insert into Vasarlas (Sorszam, Tkod, Darab, VID) values(seq_v.nextval, 't15', 1, 'v06'); insert into Vasarlas (Sorszam, Tkod, Darab, VID) values(seq_v.nextval, 't16', 1, 'v06'); insert into Vasarlas (Sorszam, Tkod, Darab, VID) values(seq_v.nextval, 't03', 4, 'v01'); insert into Vasarlas (Sorszam, Tkod, Darab, VID) values(seq_v.nextval, 't04', 1, 'v01'); insert into Vasarlas (Sorszam, Tkod, Darab, VID) values(seq_v.nextval, 't02', 2, 'v02'); insert into Vasarlas (Sorszam, Tkod, Darab, VID) values(seq_v.nextval, 't06', 2, 'v02'); insert into Vasarlas (Sorszam, Tkod, Darab, VID) values(seq_v.nextval, 't07', 4, 'v02'); insert into Vasarlas (Sorszam, Tkod, Darab, VID) values(seq_v.nextval, 't08', 1, 'v03'); insert into Vasarlas (Sorszam, Tkod, Darab, VID) values(seq_v.nextval, 't09', 1, 'v03'); insert into Vasarlas (Sorszam, Tkod, Darab, VID) values(seq_v.nextval, 't11',3, 'v04'); insert into Vasarlas (Sorszam, Tkod, Darab, VID) values(seq_v.nextval, 't12', 1, 'v04'); insert into Vasarlas (Sorszam, Tkod, Darab, VID) values(seq_v.nextval, 't13', 100, 'v05'); 92/79 B IT MAN
80 Órai feladatok 2. Lusta, de okos hallgatóknak /80 B IT MAN
81 Órai feladatok 2. Lusta, de okos hallgatóknak Ctrl V Ctrl 92/81 B IT MAN Ctrl A C
82 Órai feladatok 2. Lusta, de okos hallgatóknak /82 B IT MAN
83 Órai feladatok 1-2. Kategoria Kkod Nev 1. 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. HELP: create or replace procedure torol (x in number) as begin delete from auto where kor > x; end; 92/83 B IT MAN
84 Órai feladatok 3. Kategoria Kkod Nev 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. HELP: create or replace function maxarfgv return int as x int; begin select max(ar) into x from auto; return(x); end; 92/84 B IT MAN
85 Órai feladatok 4. Kategoria Kkod Nev Készítsen egy UjKategoria2 nevű tárolt eljárást, mely paraméterként megkapja egy új kategória 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. HELP: 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); 92/85end if; B IT MAN end;
86 Órai feladatok 5. Vasarlo VID Nev Cim Fizmod 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). HELP: 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); 92/86end if; B IT MAN end;
87 Ó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ívja meg a függvényt a select paranccsal is! HELP: create or replace function maxarfgv return int as x int; begin end; select max(ar) into x from auto; return(x); HELP: declare x number(6) := 12; begin x := novel5(13); dbms_output.put_line(x); end; 92/87 B IT MAN
88 Ó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ívja meg a függvényt! 92/88 B IT MAN
89 Ó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. 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 92/89 B IT MAN
90 Órai feladatok Készítsen egy tárolt függvényt, mellyel egy paraméterként megadott maximális árú termékek árát egy szintén paraméterként megadott százalékkal megnöveli. A függvény az érintett termékek darabszámát adja vissza eredményül. 2. Gondoskodjon arról (külön eljárások segítségével), hogy egy elhibázott áremelés után, a termékek ára visszaállítható legyen. 92/90 B IT MAN
91 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 ( 92/91 B IT MAN
92 VÉGE VÉGE 92/92 B IT MAN
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észletesebbenHaladó 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észletesebbenAdatbá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észletesebbenAdatbá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észletesebbenAdatbá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észletesebbenAdatbá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észletesebbenB 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észletesebbenB 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észletesebbenPL/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észletesebbenSQL*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észletesebbenAdatbá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észletesebbenAdatbázis Rendszerek II. 4. PLSQL Kurzorok, hibakezelés 53/1B IT MAN
Adatbázis Rendszerek II. 4. PLSQL Kurzorok, hibakezelés 53/1B IT MAN B IT v: 2017.03.02 MAN A PL/SQL alapjai Adatok kezelése Kurzorok Hibakezelés 53/2 B IT MAN Adatok kezelése PL/SQL-ben Műveletek: Írás
RészletesebbenPL/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észletesebben8. 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észletesebbenAdatbá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észletesebbenAdatbá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észletesebbenAdatbá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észletesebbenB 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észletesebbenAdatbá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észletesebbenAdatbá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észletesebbenTranzakció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észletesebbenSQL 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észletesebbenAdatbá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észletesebbenA 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észletesebbenA 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észletesebbenCsomag. 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Ö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észletesebbenKilencedik 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észletesebbenAdatbá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észletesebbenORACLE. 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észletesebbenAdatbá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észletesebbenKarakterké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észletesebbenSQL- 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észletesebbenInformatika terméktervezőknek
Informatika terméktervezőknek C# alapok Névterület (namespace) using Osztály (class) és Obejtumok Metódus (function, procedure, method) main() static void string[] arg Szintaxis // /* */ \n \t Névadások
RészletesebbenPL/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észletesebbenKalmá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észletesebbenAdattí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észletesebbenAdattí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észletesebbenEgyü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észletesebbenAdatbá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észletesebbenA 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észletesebbenBevezeté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észletesebben5. 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észletesebbenADATBÁ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észletesebbenAdatbá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észletesebbenAdatbá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észletesebbenSQL 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észletesebbenSQL 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észletesebbenAdatbá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észletesebbenAdatbá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észletesebbenGyakorlá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észletesebbenB 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észletesebbenTá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észletesebbenDr. 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észletesebbenAdatbá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észletesebbenAz 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észletesebbenJava é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észletesebbenProgramozá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észletesebbenTartalomjegyzé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észletesebbenADATBÁ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észletesebbenBASH script programozás II. Vezérlési szerkezetek
06 BASH script programozás II. Vezérlési szerkezetek Emlékeztető Jelölésbeli különbség van parancs végrehajtása és a parancs kimenetére való hivatkozás között PARANCS $(PARANCS) Jelölésbeli különbség van
RészletesebbenTá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észletesebbenB 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észletesebbenInformatikai 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észletesebbenAB1 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észletesebbenAdatbá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észletesebbenJegyz 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észletesebbenTriggerek. 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észletesebbenAlgoritmizálás és adatmodellezés tanítása 1. előadás
Algoritmizálás és adatmodellezés tanítása 1. előadás Algoritmus-leíró eszközök Folyamatábra Irányított gráf, amely csomópontokból és őket összekötő élekből áll, egyetlen induló és befejező éle van, az
Részletesebben1. 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észletesebbenSQL 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észletesebbenSQL. 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észletesebbenAdatbá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észletesebbenProgramozá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észletesebbenOperációs rendszerek. 11. gyakorlat. AWK - szintaxis, vezérlési szerkezetek UNIVERSITAS SCIENTIARUM SZEGEDIENSIS UNIVERSITY OF SZEGED
UNIVERSITAS SCIENTIARUM SZEGEDIENSIS UNIVERSITY OF SZEGED AWK - szintaxis, vezérlési szerkezetek Operációs rendszerek 11. gyakorlat Szegedi Tudományegyetem Természettudományi és Informatikai Kar Csuvik
RészletesebbenAdatbá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észletesebbenAz 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észletesebbenAdatbá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észletesebbenAdatbá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észletesebbenPL/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észletesebbenAdatbá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észletesebbenProgramozási nyelvek (ADA)
Programozási nyelvek (ADA) Kozsik Tamás előadása alapján Készítette: Nagy Krisztián 1. előadás Hasznos weboldal http://kto.web.elte.hu Program felépítése Programegységek (program unit) eljárások (procedure)
RészletesebbenLBRA6i 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észletesebbenSQL 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észletesebbenBEVEZETÉ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észletesebbenA C# programozási nyelv alapjai
A C# programozási nyelv alapjai Tisztán objektum-orientált Kis- és nagybetűket megkülönbözteti Ötvözi a C++, Delphi, Java programozási nyelvek pozitívumait.net futtatókörnyezet Visual Studio fejlesztőkörnyezet
RészletesebbenJava és web programozás
Budapesti Műszaki Egyetem 2015. 04. 08. 10. Előadás Ami kimearad múlthéten Ha már megvan a KeyListener vagy MouseListener osztályunk a következõ módon tudjuk hozzárendelni egy JFrame vagy JPanel-hez: Ami
RészletesebbenSZÁ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észletesebbenWebprogramozá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észletesebbenAz 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észletesebbenBevezeté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észletesebbenDebreceni 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észletesebbenKészítette: Szabóné Nacsa Rozália
Készítette: Szabóné Nacsa Rozália nacsa@inf.elte.hu 1 Structured Query Language (Struktúrált lekérdező nyelv) Relációs adatbázisok kezelésére kifejlesztett szabvány 2 DIAKOK dkód vnév knév 1001 Kiss János
RészletesebbenAdatbá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észletesebbenAdatbá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észletesebbenAdatbá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észletesebbenSQLServer. 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észletesebbenS z á m í t ó g é p e s a l a p i s m e r e t e k
S z á m í t ó g é p e s a l a p i s m e r e t e k 7. előadás Ami eddig volt Számítógépek architektúrája Alapvető alkotóelemek Hardver elemek Szoftver Gépi kódtól az operációs rendszerig Unix alapok Ami
RészletesebbenVizuá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észletesebbenSmalltalk 2. Készítette: Szabó Éva
Smalltalk 2. Készítette: Szabó Éva Blokkok Paraméter nélküli blokk [műveletek] [ x := 5. 'Hello' print. 2+3] Kiértékelés: [művelet] value az értéke az utolsó művelet értéke lesz, de mindet kiírja. x :=
Részletesebben