2012. tavaszi félév Véső Tamás Véső Tamás OENIK / 18
Interaktív környezet (felhasználói adatmegadás) FORMÁZÁSOK Véső Tamás OENIK / 18
Különböző feladatok megoldása során változókat is használhatunk, melyek értékét a felhasználótól kérhetjük be. Ezeket eltárolhatjuk, majd betölthetjük Kilépéskor törlődnek Véső Tamás OENIK / 18
&változó &&változó ACCEPT DEFINE UNDEFINE Véső Tamás OENIK / 18
Mind a két esetben, ha még korábban a változónak nem adtunk értéket, akkor az adatbekérés automatikus A &&változó által bekért érték eltárolásra kerül, míg a &változó által bekért nem Mikor kell ” ”-ok közé tenni és mikor ’ ’ közé? Véső Tamás OENIK / 18
Kiírja a képernyőre az utána írt szöveget PROMPT &valt PROMPT &valt PROMPT &valt PROMPT &&valt PROMPT &valt PROMPT &valt Véső Tamás OENIK / 18
ACCEPT [változó neve] [PROMPT ”szöveg”] ◦ Segítségével egy változó értékét kérhetjük be ◦ ACCEPT ujvalt PROMPT "Kikre kíváncsi?:"; Select * from emp where upper(job) = upper('&ujvalt'); ACCEPT [változó neve] [adattípus ] [FORMAT ’MASZK’] [PROMPT ”szöveg”] [HIDE] Véső Tamás OENIK / 18
Adattípus ◦ NUMBER ◦ CHAR ◦ DATE Formátum ◦ Megadható a beviteli formátum HIDE ◦ Elrejti a beírt szöveget (*-ok) ACCEPT ujvalt DATE FORMAT 'YYYY-MM-DD' PROMPT "Mi legyen a dátum?:"; Select * from emp where hiredate < '&ujvalt'; Véső Tamás OENIK / 18
DEFINE [valtozo neve] = [érték]; ◦ Értékadás DEFINE [valtozo neve] ◦ Lekérdezés DEFINE ◦ Összes változó lekérdezése UNDEFINE [változó neve] ◦ Változó törlése Véső Tamás OENIK / 18
Listázza a felhasználó által megadott dátum előtt belépett, és foglalkozású dolgozókat dolgozókat! ACCEPT datum DATE FORMAT 'YYYY-MM-DD‘ PROMPT "Mi legyen a dátum?:„; ACCEPT munkakor PROMPT "Milyen munkakör?:„; Select * from emp where hiredate < '&datum' AND upper(job) = upper('&munkakor');
Írjon egy alkalmazást, amely a felhasználó által megadott lekérdezést futtatja! ◦ ACCEPT utasitas PROMPT "Adja meg az utasítást! "; SELECT * from (&utasitas); Véső Tamás OENIK / 18
Véső Tamás OENIK / 18
Kiírandó számjegyek számának beállítása ◦ SET NUMWIDTH [szám] Egyszerre listázott sorok száma (oldalméret) ◦ SET PAGESIZE [szám] Egy sorban listázott karakterek száma ◦ SET LINESIZE [szám] Visszajelzések ◦ SET VERIFY ON/OFF Véső Tamás OENIK / 18
Fejléc (TTITLE) ◦ Ki/Be kapcsolás: TTITLE ON/OFF ◦ Megadás: TTITLE ”Szöveg” Lábléc (BTITLE) ◦ Ki/Be: BTITLE ON/OFF ◦ Megadás: BTITLE ”Szöveg” Ismétlődések kiszűrése ◦ BREAK ON [Oszlopnév] Véső Tamás OENIK / 18
Oszlopok formázása ◦ Formázás: COLUMN [oszlopnév/kifejezés] [FORMAT ’MASZK’] [HEADING [fejléc szövege] [JUSTIFY LEFT/CENTER/RIGHT] ◦ Formázás ki/be: COLUMN [oszlop/kifejezés] ON/OFF ◦ Oszlop megjelenítése: COLUMN [oszlop/kif] PRINT/NOPRINT ◦ Formázás törlése COLUMN [oszlop/kif] CLEAR Véső Tamás OENIK / 18
CLEAR BREAKS CLEAR COLUMNS CLEAR SCREEN Véső Tamás OENIK / 18
ACCEPT beszam PROMPT 'Irj be egy szamot!‘ BREAK ON "munkakör" on "Munkaköri létszám„ select dolg.ename, dolg.job, al.letszam AS "munkakör" from emp dolg, (select job, count(ename) as letszam from emp group by job having count(ename) > &beszam) al where dolg.job=al.job order by al.job; CLEAR BREAKS; Véső Tamás OENIK / 18
Jövő héten gépes ZH: MINDEN AMI KORÁBBAN IS VOLT! Véső Tamás OENIK / 18