You are on page 1of 12

SQLTools in 5 steps

ver. 0.1

Drzewiecki Tomasz - Magyar fordítás és átdolgozás: Gáti Tamás

2006. július 30.


Tartalomjegyzék

1
1. Kapcsolódás
Kezdetnek indítsd el a programot. Megjelenik az adatbázis kapcsolódási ablak.

A bal oldalon látható a korábbi adatbázis kapcsolatok listája. A képen a lista az utolsó használat idô-
pontja szerint van rendezve, de rendezhetô bármelyik oszlop szerint. Valamelyik adatbázisra való dupla
kattintással újra kapcsolat létesül.
Egy új adatbázishoz felhasználói név és jelszó beírása után tudsz, kiválasztva az adatbázis nevét a TNS
listából (pontosabban a SID listából).
Mi történik, ha rossz tnsnames.ora fájlod van, vagy egyáltalán nincs is? Beírhatod manuálisan a
paramétereket. Jelöld ki a Bypass tnsnames.ora opciót és üsd be a gép nevét (vagy IP-jét), az adatbázist
és a kapcsolódási portot (általában 1521).

A Test connection gomb hasznos lehet kapcsolódási kísérleteknél. Ellenôrizheted az Oracle bázis példá-
nyának létezését és a login információk helyességét, anélkül hogy belépnél az adatbázisba.
Ha SYSDBA vagy SYSOPER felhasználóként kell belépned bizonyos adminisztratív feladatok miatt,
válaszd ki a megfelelô opciót a Mode legördülô listából.

2
Az adatbázisba való belépés után láthatod a kapcsolat paramétereit és 2 gombot az eszköztárban.
Ezekkel lehet szétkapcsoládni, egy másik Oracle példányhoz kapcsolódni vagy más felhasználóként beje-
lentkezni.

2. Központi ablak
Ime a program központi ablaka.

A szerkesztô területen futtathatunk SQL lekérdezéseket, eljárásokat és triggereket. Az alsó ablak


tartalmazza a lekérdezés eredményét. Probálj ki egy egyszerû példát. A felsô ablakba üsd be:

SELECT 5+10 FROM DUAL;

Nyomd meg az F5 gombot. Az eredmény lent jelenik meg!

3
Próbálj most valami nehezebbet.

SELECT * FROM user_tables;

Figyeld meg, hogy ha kisbetükkel gépelsz, az SQL kulcsszavak azonnal nagybetüssé válnak. Ez az
autómatikus formázás. A Tools → Application/Editor Settings → Normalize keywords menü opció vezérli
ezt a formázást. Ha egy formázatlan kódrészlet van az ablakban, meg tudod 'szépíteni' a Text → Normalize
Keyword menü opcióval.
Futtasd a fenti lekérdezést az F5 lenyomásával. A USER_TABLES tartalmától függôen kb. egy tucat
sor lesz az eredmény ablakban.

A képen az alsó státusz sorban látható, hogy a program csak az elsô 100 sort apta meg 0.481s alatt. További
sorokat csak akkor kér le a program, ha lefelé lapozol az eredménylistában. Az egyszerre lek?0rt sorok
számát a Tools → Session/DDL/Grid Settings → Data Grid → Row prefetch menü opcióval változtathatod
meg.
Válaszd most ki a Session → Enable Session Statistics menü opciót. Futtasd újra az elôzô lekérdezést.
Kattints a Statistics fülre.

4
Ebben a fülben az elôzô lekérdezés statisztikai vannak. (A teljes kapcsolat statisztikairól van szó, de
csak egy lekérdezést futott mióta a statisztikai adatgyüjtés kezdete óta.) A képen az egérmutató egy
nagyon hasznos gmb felett áll - Automatikus fülek közötti váltás kikapcsolása. Alapértelmezésben a the
Query fül automatikusan megnyílik, ha egy új lekérdezést futtatunk. Nyomd meg az F5 hogy lásd a
mûködését. Ezután menj a Statistics fülre és nyomd meg a gombot. Most F5 újra. Mit látsz?
Kapcsold ki az Automatikus fülek közötti váltás gombot és nyomj F9-öt. A lekérdezési terv a Plan
fülben jelenik meg.

Térj most vissza a felsô ablakba és kattints valahová a 'USER_TABLES' szóban. Nyomd meg az
F12-t.

5
Ez felhoz egy ablakot a tábla vagy nézet struktúrájával. A táblától vagy nézettôl függô objektumok
listáját és a táblát vagy nézetet alkotó objektumok listáját kapjuk. Ez hasznos lehet ha objektulok közötti
függôségeket keresel.

3. Objektum lista
Nyomd meg az Alt+3-at mikor a kurzor a szerkesztô ablakban van. Ez az objektum-böngészôt nyitja
meg.

6
Megnyílik egy ablak az összes objektum listájával. Valassz ki egy táblát (a Tables fülben), pl. COUN-
TRIES a HR sémából. Jobb egérklikk rajta es válaszd ki, hogy Query.

Megnyitottál ezzel egy új szerkesztô ablakot és futtattad az alábbi lekérdezést:

SELECT * FROM hr.countries;

Válaszd ki ugyanezt az objektumot az objektum listában (Alt+3) és válaszd ki a Load opciót a


menübôl (vagy egyszerên duplán klikkelj). A Local DDL Preferences ablakot látod. Válaszd ki a képen
látható opciókat és nyomj OK-t.

7
Egy új szerkesztô ablak jelenik meg a tábla létrehozásához szükséges szkripttel. Ez mas objektumokkal
is mûködik.

Ezzel könnyedén újra létre lehet hozni az objektumokat. Például vátoztass valami apró részletet,
mondjuk az egyik mezô leírását és nyomj F5-öt. Ha nincs hiba, akkor ez a változtatás véglegessé válik az
adatbázisban. Az Output fülben látszanak a szkript futtatási hibai piros ikonnal és a sikeres parancsok
kék ikonnal.

8
Az Object list egy szintén hasznos opciója, hogy több objektumot (pl. egész csomagokat) is képes
egyszerre betölteni a szerkesztô ablakba, egy nagy szkriptként. Jelölj ki pl. egy csomagot és válaszd a
Load all in one opciót a jobbgombos menübôl.

Egy új szerkesztô ablak jelenik meg a kijelölt csomagok deniciós szriptjével. Ez jól használható pl.
ha egy bizonyos hibaüzenetet keresel a csomagokban.

4. Gyakorlásból sosem elég


Az SQLTools egyik szépsége (az árán kívül), hogy nincs telerakva varázslókkal és varázsgombokkal. Hidd
el, még komplex fejlesztôi projektekhez is elegendô ez a spártai fejlesztôkörnyezet.
De csapjunk a lovak közé - jöjjön a házi feladat! Tegyük fel, hogy Oracle8i vagy magasabb környezetben
vagyunk, és van joguk a sémában objektumok alkotására, törlésére és minden egyéb objektum mûveletre.

4.1. Némi házi feladat


1. Csinálj egy táblát a USER_TABLES-höz hasonlóan, de csak az elsô 3 oszloppal.

2. Másolj adatokat az új táblába INSERT segítségével a USER_TABLES táblából.

9
3. Készíts saját csomagot egy 'public' egysoros eljárással (használd a következôt 'put'+CTRL+SPACE
- írd be, hogy put majd nyomj <CTRL+SPACE> -t). A kimeneten az új táblából származó adatok
lesznek.
4. Készíts egy önálló eljárást, amely a csomag eljárását hívja.
5. Készíts egy névtelen blokktörzset:
BEGIN
our_created_procedure;
END;
6. Futtasd a szripter az F5-tel. Mentsd el a szkriptet egy fáljba.
7. Jelöld ki a tábla nevét a szerkesztôben és nyomj F12-t. Melyik objetumtól függ a tábla? Mely
objektumok használják a táblát?
8. Csukj be mindent. Nyisd meg újra az objektum listát (Alt+3). Töröld az új táblát a gomb
segítségével.
9. Lépj be az objektum listába a Package bodies fülben. Nyomd meg a Refresh gombot és gyeld meg
mi jelenik meg a csomag jobb oldalán.
10. Lépj be a szerkesztôbe és töltsd be a szkriptet. Próbáld meg futtatni. Miért nem megy?
11. Végül t?0rj vissza az objektum listához, töröld az eljárást és a csomagot. Befejeztük!

4.2. Segítség (sokféle módon elérhetô természetesen ugyanaz az eredmény)


1. CREATE TABLE . . . AS SELECT table_name, tablespace_name, cluster_name FROM user_tables
WHERE 1=0;

2. INSERT INTO . . . SELECT . . . ;

3. Nyisd meg az objektum listát, töltsd be bármelyik csomagot (specikáció + törzs), töröld az összes
eljárást egy kivételével és addj hozzá 3 sort:
• with variable(s) declaration;
• with SELECT . . . INTO . . . ;
• with Dbms_Output.Put_Line();

4,5,6,7. Egy példa implementáció.

10
8,9. Az 'invalide' csomag és a hibaüzenetek lengyel/angol nyelven lesznek.

5. Bôvebb tudnivalók - az SQLTools személyreszabása


Ezen nincs sok magyaráznivaló? Az opciók a következô menükben vannak:

• Text → File Settings & Information

• Tools → Session / DDL / Grid Settings


• Tools → Application / Editor Settings
A billentyû-kombinációkat a Data / custom.keymap lehet megváltoztatni.

5.1. Hogyan tovább?


2004-12-13 Jelenleg a program nem moduláris - egyetlen hatalmas *.exe fájl. A jövôben fontolgatjuk a
plugin-ok bevezetését, amit bárki csinalhatna anélkül, hogy a fô forrásállományt ismerné.
Mind az SQLTools mind pedig az OpenEditor (amely az SQLTools jelentôs részét teszi ki) nemrég
elérhetôvé vált SourceForge-on. Remélhetôleg ez meggyorsítja majd a fejlesztést.
Remeljük mindenki, aki ezt olvassa, támogatni fogja a fejlesztô csapatot, még ha kis dolgokkal is, mint
új verziók tesztelése és hiba-elhárítás. Elôre is köszönjük!

11

You might also like