兩種基本的SQL*PLUS命令:
工做命令:實際作某事的命令,如恢復數據庫的recover命令。
格式化命令:這些命令幫助整理來自查詢的輸出信息。
工做命令
1.SQLPROMPT:改變SQL*PLUS界面上的提示符。
SET SQLPROMPT '_CONNECT_IDENTIFIER >':使用實例名做爲界面提示符。
SET SQLPROMPT "_USER>":使用用戶名做爲界面提示符。
SET SQLPROMPT "_USER '@' _CONNECT_IDENTIFIER>":使用用戶名和實例名做爲界面提示符。
SET SQLPROMPT "_USER_PRIVILEGE>":使用當前用戶名以及用戶登陸的權限。
使用_USER,_CONNECT_IDENTIFIER,_DATE分別顯示用戶名,當前日期和數據庫名,如:set sqlprompt "_USER 'on' _DATE 'at' _CONNECT_IDENTIFIER>".
2.DESCRIBE:描述或列出表的列和列的說明。還能夠描述ORACLE的程序包或過程。此命令還能夠藐視元數據。
3.HOST命令:容許用戶在SQL*PLUS中使用操做系統命令。還能夠用驚歎號(!)代替host命令在SQL*PLUS中運行操做系統命令。
4.SPOOL命令:能夠將一條或多條SQL語句的輸出結果保存到UNIX和windows的操做系統文件中。
spool {file_name[.ext] [create]|[replace]|[append]|off|out}
5.ACCEPT:從屏幕上讀取用戶的輸入信息並將其保存在一個變量中。通常用來響應SQL*PLUS界面的提示,讀取用戶的輸入信息。
PROMPT:此命令從SQL*PLUS中發送一條信息或空行到屏幕,一般用於引導用戶輸入信息或顯示註釋。
6.EXECUTE:啓動程序包或過程。
7.PAUSE命令:在輸出信息滿一屛後暫停顯示,而後,按一下ENTER鍵就能夠看到下一屏的顯示信息。
格式化SQL*PLUS的輸出以及建立報告的命令
break命令:指定格式變化的位置以及指定變化的類型。實例:break on deptno skip page on job skip 1 on sal skip 1
column命令:顯示錶中任一知道那個列的各類屬性。
例子:column dname format a15 heading 'department' ——dname列被指定爲最多包含15個字符,超過部分將被截斷。而後給要列出的部門名指定一個有意義的標題。
column sal format $9999——column命令指定sal類顯示一個前導符號$
8.compute:用於幾種類型的計算,其中包括求平均值,標準方差等等。
9.repfooter:在報告的底部打印指定的頁腳文本。
10.repheader:在報告首頁的頂部打印報告的標題。
11.TTITLE和BTITLE命令。
TTITLE:將標題放在每頁報告的頂部。
BTITLE:將標題放在每頁報告的底部。
在SQL*PLUS中建立命令文件
edit(或ed)啓動默認的編輯器,而後能夠輸入命令,命名或保存文件。
save:將SQL緩衝區內容保存在文件中。
2./ :執行緩衝區中的SQL代碼,但不現實緩衝區的腳本代碼
3.run:可代替/命令,但可列出所執行的腳本的內容。
define和undefine命令
define:指定變量和值。其定義域在會話結束時或者在遇到undefine命令及變量復位是終止。
define命令顯示的預約義SQL*PLUS變量
SQL*PLUS中使用註釋
/*....*/
--
remark:在一行開始加remark命令表示改行不應執行。
顯示SQL命令清單
SQL*PLUS在稱爲SQL緩衝區的內存區中存儲最新發布的SQL命令。然而,SQL*PLUS只能將最後發佈的一條命令保存在緩衝區中。輸入的每條新語句都將替換保存區中的上一個語句。若是要看到之前發佈過的命令,則須要使用LIST命令,或者輸入字母L
get命令:1.將腳本從操做系統裝載到SQL緩衝區中,並可在執行SQL腳本前瀏覽其內容。
2.連續執行幾個SQL命令的腳本
get one_script.sql
當執行one_script.sql腳本時,其四個成員將逐個運行。
@@commandfile表示法執行包含多個命令文件的命令文件。@@表示法的使用確保了ORALCE以主命令文件相同的路徑查找每一個文件。
在SQL*PLUS中進行編輯
用模式匹配技術修改文本:C[HANGE]/OLD/NEW
插入和刪除行:
;:充當SQL語句的終止符。
.:是blockterminator變量的默認值,它表示語句輸入的結束。
插入(input或i)
刪除:del4(4表明要刪除的行號),使用無行號表示將刪除SQL緩衝區中的最後一行。
添加文本:append
有時語句內部可能有一個分號,若是將其解釋爲語句的終止符,將會產生錯誤。以下:
SQL>insert into employees values('BEGIN
2 LOAD_PROCEDURE);
3* END');
由於第二行不是語句的結束,將會報錯。
SQLTERMINATOR變量的默認值爲分號(;),使用SQLTERMINATOR變量關閉分號做爲語句終止符的做用。
SQLTERMINATOR OFF
:注:關閉了分號做爲語句終止符的做用,應該使用/執行語句。也可使用BLOCKTERMINATOR變量(.)來表示語句的結束。