DBA基礎課程:oracle常用的SQL PLUS命令詳解
最新學訊:近期OCP認證正在報名中,因考試人員較多請盡快報名獲取最近考試時間,報名費用請聯系在線老師,甲骨文官方認證,報名從速!
我要咨詢dba基礎課程:oracle常用的SQL PLUS命令詳解
Oracle的sql*plus是與oracle進行交互的客戶端工具。在sql*plus中,可以運行sql*plus命令與sql*plus語句。我們通常所說的DML、DDL、DCL語句都是sql*plus語句,它們執行完后,都可以保存在一個被稱為sql buffer的內存區域中,并且只能保存一條最近執行的sql語句,我們可以對保存在sql buffer中的sql 語句進行修改,然后再次執行,sql*plus一般都與數據庫打交道。除了sql*plus語句,在sql*plus中執行的其它語句我們稱之為sql*plus命令。它們執行完后,不保存在sql buffer的內存區域中,它們一般用來對輸出的結果進行格式化顯示,以便于制作報表。 下面我們就一起來看一下常用的sql*plus命令。
1.desc命令:查看表結構命令

2.set line命令:設置顯示數據寬度。默認的界面顯示寬度為80

我們可以看到上面用默認顯示數據寬度80查看的查詢結果。可以清楚的看到一行顯示不完所有的數據。這樣看起來感覺非常難看。下面我們設置顯示數據寬度來看一下效果

這樣數據看起來是不是好受多了。所有的數據字段都在一行顯示。這就是set line 命令的作用啦。
3.L命令和n text命令:L命令是查看我們剛才所輸入的sql命令,也就是在緩存區的sql語句。N text命令是修改緩沖區的sql的第n行為text的。

從上面的例子我們可以看出。我們輸入L命令,顯示出了我們上一次剛剛輸入國的sql語句。然后用到了n text 命令修改了第一行的sql語句。然后又用了L顯示緩沖區的sql為我們修改后的sql、
4.“/”命令:執行緩沖區sql命令
我們在上面知道我們可以利用n text 命令對我們上一次所輸入的sql進行修改。那么修改后的sql我們要怎么執行呢?難道要在重新輸入一遍嗎?那這樣這個修改命令就沒有什么意義了。Sqlplus為我們提供了“/”命令。執行緩沖區的sql語句。

5.n 命令和 a 命令:設置第n行為當前行命令和在當前行追加sql命令
有時候我們在寫sql的時候會出現在第n行忘記加一些關鍵語句的時候。這是我們就可以使用這兩個命令。先用n命令選擇我們要追加sql的行為當前行。然后在用a命令在當前行追加sql。
例如:

突然我們不僅想看empno這個字段的信息。我們還想看到job字段的信息。我們可以如下做法:

6.del n 命令,刪除第n行命令。
這個命令應該很好理解吧。直接看例子吧:

7.c命令:“c/原文/新的正文”這個命令主要是用來把當前行的原文內容改變為新的正文。也就是用新的正文替換為新的正文;
這里要注意的是。在替換之前一定要把要替換的原文所在的行設置為當前行。

從上面可以看出。我一開始把字段名empno寫成了empon。所以我要把字段名改過來。先把empon所在的行設置為當前行。然后利用c命令進行修改。
8.如何生存腳本文件:將sql緩沖區中的語句存入指定.sql文件中,該文件就是所謂的腳本文件
利用save命令存入指定的文件夾中。注:在保存之前一定要保證該文件夾存在。

9.如何編輯腳本文件。
1.)利用get命令把本地的腳本文件加載到sqlplus里。

然后我們就可以利用C/A/DEL等命令對該文件進行修改了。
2.)。你也可以利用ed命令打開腳本文件直接修改。

10直接運行腳本文件。

從上面我們可以看出直接@我們所想要執行的腳本文件。我們就可以直接運行該文件中的sql了。你也可以使用start命令運行腳本文件。
11.spool命令:在這個命令之后屏幕上所顯示的一切都保存到指定的目錄下。在spool命令后,你可以執行一些查詢,最后在輸入spool off命令才能看到在指定的文件中看到報表。這個主要是用來保存報表時使用的。

