SQLPlus命令使用指南(一)

熟悉oracle的朋友都知道,SQL PLUS是一個重要的和ORACLE打交道的工具。SQL PLUS本身有很多命令,可以幫助我們做很多事情,包括產生一些規格化的報表、提供人機交互等等。下面,我就簡單地說明一下,供大家參考:

幫助命令

   HELP可以幫助我們,查找SQL PLUS每個命令的用法

舉例:

SQL> help accept

 <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

 ACCEPT

 ------

 

 Reads a line of input and stores it in a given user variable.

 

 ACC[EPT] variable [NUM[BER] | CHAR | DATE] [FOR[MAT] format]

   [DEF[AULT] default] [PROMPT text | NOPR[OMPT]] [HIDE]

 

  SQLPLUS的人機交互命令

SQLPLUS裏可以接受用戶的輸入,最常用的命令有:

(1)   ACCEPT

接受整行的數據。

舉例說明:

角本1.sql,查出工資大於輸入金額的僱員。

SET FEEDBACK OFF

SET PAUSE OFF

ACCEPT sal NUMBER PROMPT 'Please input salary(weekly): '

select employee_id,last_name,first_name,salary from employee

where salary>&sal;

SQLPLUS 中運行

SQL> @c:/1.sql

Please input salary(weekly): 1000

old   2: where salary>&sal

new   2: where salary>      1000

 

EMPLOYEE_ID LAST_NAME    FIRST_NAME          SALARY

----------------- ------------------- ----------------------------- ----------

       7499 ALLEN           KEVIN                 1600

       7505 DOYLE           JEAN                  2850

       7506 DENNIS          LYNN                  2750

       7507 BAKER           LESLIE                2200

       7521 WARD            CYNTHIA               1250

       7555 PETERS          DANIEL                1250

       7557 SHAW            KAREN                 1250

       7560 DUNCAN          SARAH                 1250

       7564 LANGE           GREGORY               1250

       7566 JONES           TERRY                 2975

7569 ALBERTS         CHRIS                 3000

注:

ACCEPT接受一行的輸入,並且把輸入的數據根據指定按照指定的類型存放到變量(如不存在,自動創建一個)中。

FOMRAT用於制定輸入的數據格式,如數字可以指定’999.99’,字符可以指定長度’A10’

如果類型是CHAR,長度最大240

 

(2)   PROMPT

輸出提示信息。

語法:PRO[MPT] [text]

舉例:

SQL> PROMPT Hello,world

Hello,world

(3)   PAUSE

輸出一行信息,並等待用戶輸入回車。


舉例:

SQL> PAUSE Please press [RETURN]

Please press [RETURN]

 

SQL>

 

編輯命令

通過SQL PLUS發送的最後一次SQL語句都會保存在SQL PLUS的一個數據緩衝區內,而SQLPLUS命令不包括在內可以通過編輯命令進行編輯。

(1)   /

重新執行一下sql 語句。

(2)   APPEND

在命令緩衝區內,追加字符。

舉例:

SQL> select * from tab;

….

SQL> A  WHERE tabtype='VIEW'

  1* select * from tabwhere tabtype='VIEW'

SQL> /

 

TNAME                          TABTYPE  CLUSTERID

------------------------------ ------- ----------

PLSQL_PROFILER_GRAND_TOTAL     VIEW

PLSQL_PROFILER_LINES_CROSS_RUN VIEW

PLSQL_PROFILER_NOTEXEC_LINES   VIEW

PLSQL_PROFILER_UNITS_CROSS_RUN VIEW

SALES                          VIEW

 

(3)   LIST;

列出緩衝區內的內容,list可以列出某行的內容,;則是所有的。

舉例:

SQL> ;

  1  select * from tab WHERE tabtype='VIEW'

  2* ORDER BY tname

SQL> l 2

  2* ORDER BY tname

(4)   INPUT

增加一行內容

舉例:

SQL> i  ORDER BY tname

SQL> l

  1  select * from tab WHERE tabtype='VIEW'

  2* ORDER BY tname

(5)   CHANGE

把當前行的第一個艘索到的內容替換新的內容,

語法:C[HANGE] sepchar old [sepchar [new[sepchar]]]

舉例:

SQL> l

  1* select * from employee where salary>1000 and salary<2000

SQL> c/salary/sal

  1* select * from employee where sal>1000 and salary<2000

注意,當緩衝區有兩行的時候,用C替換的是最後一行裏的內容。

(6)   Edit

在指定的文本編輯器裏,編輯緩衝區的內容。Windows上,缺省是NOTEPAD

(7)   SPOOL

把輸出結果,指定到一個文件中,有點像DOS命令下的>

SPO[OL] [file_name[.ext] | OFF | OUT]

SQL> spool c:/1.txt

SQL> select * from tab;

SQL> spool off

 

執行命令

(1)   @

載入角本,運行。

舉例:

SQL>@C:/1.SQL

(2)   EXECUTE

運行PL/SQL過程和程序包。

 

待續。

 

Enhydraboy

[email protected]

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章