Oracle

Oracle SQL Plus 실행 명령어 모음

긋대디 2020. 9. 26. 00:00

- SQL Plus 실행명령어


아래 나온 것들은 별로 실행해 본적이 없는거 같습니다.

주로  리눅스환경에서 sqlplus를 실행한 후, ed 혹은 edit 를 통해 vi 편집을 하고 해서 실행하는 것을 주로 사용했습니다.

 

이 내용을 저장하고 싶으면 'spool 파일이름' 을 해주면 sqlplus 를 실행한 디렉토리에 파일이름으로 실행내용이 저장된다.

 

저장내용을 좀더 이쁘게 하고 싶다면 col name format a30 이거 정도 사용하면 됩니다.

a다음 숫자는 해당 컬럼 길이 만큼 지정해줍니다.


'spool off' 하면 정지 됩니다.

/    실행
run
help
host
timing

SQL Plus 편집명령어

I[NPUT] text : 새로운 라인을 삽입

D[EL] : 현재 버퍼 라인의 내용을 삭제

D[EL] n : 버퍼에 있는 n번째 라인 삭제

D[EL] n1 n2: 버퍼에 있는 n1 부터 n2까지의 라인 삭제

L[IST] : 버퍼에 있는 모든 내용을 화면에 표시

L[IST] n : 버퍼의 라인 중 n라인의 내용을 화면에 표시

L[IST] n1 n2 : 버퍼의 라인 중 n1 라인부터 n2 라인까지를 화면에 표시

C[HANGE] : 현재 버퍼 라인의 내용을 교체(형식 : C/old문자열/new문자열)

N text : 라인n의 내용을 text로 변경

0 text : 첫번째 라인 앞에 한 라인을 삽입

Cl[ear] Buff[er] : 버퍼의 내용을 전부 지움

 

 

SQL> select ename as 사원명 , sal as 급여
  2  from emp
  3  where ename = 'SMITH';
사원명           급여
---------- ----------
SMITH             800
SQL> run
  1  select ename as 사원명 , sal as 급여
  2  from emp
  3* where ename = 'SMITH'
사원명           급여
---------- ----------
SMITH             800
SQL> list
  1  select ename as 사원명 , sal as 급여
  2  from emp
3* where ename = 'SMITH'
SQL> list 1
  1* select ename as 사원명 , sal as 급여
SQL> list 1 2
  1  select ename as 사원명 , sal as 급여
2* from emp
SQL> list 3
  3* where ename = 'SMITH'
SQL> i or ename = 'WARD'
SQL> /
사원명           급여
---------- ----------
SMITH             800
WARD             1250
SQL> list
  1  select ename as 사원명 , sal as 급여
  2  from emp
  3  where ename = 'SMITH'
4* or ename = 'WARD'
SQL> list 4
  4* or ename = 'WARD'
SQL> c/WARD/FORD
  4* or ename = 'FORD'
SQL> /
사원명             급여
----------           ----------
SMITH             800
FORD             3000
SQL> list
  1  select ename as 사원명 , sal as 급여
  2  from emp
  3  where ename = 'SMITH'
  4* or ename = 'FORD'
SQL> <st1:state w:st="on">del</st1:state> 4
SQL> list
  1  select ename as 사원명 , sal as 급여
  2  from emp
  3* where ename = 'SMITH'
SQL> /
사원명             급여
----------           ----------
SMITH             800
SQL> 3 where sal > 2000
SQL> /
사원명            급여
----------           ----------
JONES            2975
BLAKE            2850
CLARK            2450
SCOTT            3000
……
SQL> list
  1  select ename as 사원명 , sal as 급여
  2  from emp
  3* where sal > 2000
SQL> <st1:state w:st="on">del</st1:state>
SQL> list
  1  select ename as 사원명 , sal as 급여
  2* from emp
SQL> list 1
  1* select ename as 사원명 , sal as 급여
SQL> <st1:state w:st="on">del</st1:state>
SQL> list
1* from emp
SQL> clear buffer
buffer 소거되었습니다.
SQL> list
SP2-0223: SQL 버퍼에 줄이 없습니다.