Felhasználói eszközök

Eszközök a webhelyen


ab:sql-plus

6. SQL*Plus interfész

Az SQL*Plus az Oracle interfész-eszköze, amely által SQL, SQL*Plus parancsokat és PL/SQL blokkokat lehet végrehajtani.

Az SQL*Plus indítása (belépés):
Sqlplus név/jelszó. Az SQL indítása után a parancssorban megjelenik egy prompt-jel, amelynek az alapértelmezése SQL>.
Parancssor – olyan sor az SQL*Plus-ban, ahová lehet beírni a parancsokat. A parancs végét ’;’ jellel jelölik. A parancs végrehajtása után újból megjelenik az SQL> prompt.

A SQL> HELP <parancs> megadja a parancs struktúráját és paramétereit.
Az utolsó bevitt parancs a SQL-pufferben tárolódik. Az SQL-puffer tartalmával a következő műveleteket lehet végrehajtani:

ParancsA parancs rövid változataMúvelet leírása
APPEND szöveg A szövegBevinni a szöveget a puffer végére
CHANGE /szöveg C /szövegTörli a szöveget a puffer utolsó sorából
CLEAR BUFFER C BUFFTörli a SQL-puffert
DEL n - Törli a puffer n-ik sorát
INPUT I Bevinni egy sor tartalmát a pufferbe
INPUT szöveg I szövegSzöveg a pufferbe
LIST L SQL-puffer tartalmát a képernyőre
EDIT ED Szerkesztésre megnyitja a puffer tartalmát
EDIT file ED fileSzerkesztésre megnyitja a file-t (ugyan úgy, mint a puffert)

Példa. SQL> LIST

1   SELECT * 
2   FROM
3   hr.jobs;  

Ha a parancs hibát tartalmaz, akkor azt az SQL*Plus jelzi.

SQL> SELECT

1   job
2   FROM
3   hr.jobs;

job *Error at line 2:
ORA-00904: „JOB”: invalid identifier

Elegendő csak a hibás sort kijavítani:
SQL> 2 job_id SQL> / – / - a parancs végrehajtása, vagy SQL> RUN

Ha a puffer tartalmaz egy parancsot, akkor a RUN paranccsal azt lehet megjeleníteni és végrehajtani.

Példa.
Legyen a puffer tartalma
SELECT job_id FROM Hr.jobs;

akkor
SQL> RUN 1 SELECT job_id FROM Hr.jobs

job_id
ad_pres
pr_rep

2 rows selected.

Ha nem akarjuk megjeleníteni a tárolt parancs tartalmát, akkor a / parancsot kell alkalmazni.
Az AB Adminisztrátor fontosabb parancsai a SQL*Plus-ban:

  • STARTUP (elindítja az AB)
  • SHUTDOWN (megállítja az Oracle-példányt)
  • ARHIVE LOG (elindítja, vagy megállítja az automatikus archiválást).

DESCRABE parancs
A DESCABE paranccsal az AB objektumairól összefoglaló információt lehet lekérdezni.
Például, meg lehet tudni, hogy milyen a customer tábla struktúrája.

SQL> DESCRIBE customer

NameNull?Type
LAST_NAMENOT NULLVARCHAR2(50)
STATE_CDNOT NULLVARCHAR2(2)
SALESNOT NULLNUMBER

Példák az SQL parancsok végrehajtására az SQL*Plus-ban.

SQL> CREATE TABLE customer
2 (customer_id NUMBER(10) NOT NULL,
3 surname VARCHAR2(30) NOT NULL,
4 first_name VARCHAR2(20),
5 sales_region CHAR(2),
6 ytd_sales NUMBER(10.2),
7 total_sales NUMBER (14.2) );

SQL> ALTER TABLE customer
2 ADD tax_exemp_ind VARCHAR2(1);

SQL> ALTER TABLE customer
2 DROP COLUMN tax_exemp_ind;

EXECUTE (EXEC) parancs
Ezzel a paranccsal program-egységeket lehet futtatni. Például, tárolt eljárásokat.

Példa. Először létrehozunk egy HR.Test nevű függvényt:

  CREATE FUNCTION HR.Test (i IN INTEGER) RETURN INTEGER
  AS
  n NUMBER; 
  
  BEGIN
    n:=i*100;
    RETURN(n);
  END;

Utána megadjuk az INPUT N paramétert, és végrehajtjuk a függvényt. Az eredményt a PRINT parancs jeleníti meg.

SQL> variable n number
SQL> EXECUTE : n:=HR.Test(10);
PL/SQL procedure successfully completed.

SQL> PRINT n

N
1000

A SHOW ALL parancs által meg lehet nézni az SQL*Plus beállításait.
Az SQL*Plus parancsokat és azok eredményeit a
SPOOL <fájl_név>
paranccsal egy (output) fájlba lehet elhelyezni.
Ez a parancs csak akkor fog működni, ha az be van kapcsolva (OUT): SPOOL OUT
A kikapcsolás (OFF) a
SPOOL OFF
paranccsal történik.

Példa. SQL> SPOOL Test.log
SQL> SELECT * FROM all_objects WHERE owner=’HR’;
SQL> SPOOL OFF

Így script-fájlokat lehet létrehozni, és utána azokat a
SQL> @Test.log
parancs segítségével végrehajtani.

DUAL tábla
Az Oracle tartalmaz egy úgy nevezet DUAL táblát. A DUAL tábla egy sort és egy oszlopot tartalmaz.
A parancsokban ezt a táblát akkor alkalmazzák, amikor egy parancsban nincs szükség táblára,
de az SQL-parancs tartalmaz FROM záradékot, és melyben megadhatjuk a DUAL tábla nevét.
A DUAL tábla tulajdonosa SYS.

Példa. SELECT SYSDATE FROM dual;

SYSDATE
20.10.27
ab/sql-plus.txt · Utolsó módosítás: 2021/07/24 14:09 szerkesztette: holovacs