一:SQL> help index ---顯示sqlplus中的指令
Enter Help [topic] for help.
@ COPY PAUSE SHUTDOWN
@@ DEFINE PRINT SPOOL
/ DEL PROMPT SQLPLUS
ACCEPT DESCRIBE QUIT START
APPEND DISCONNECT RECOVER STARTUP
ARCHIVE LOG EDIT REMARK STORE
ATTRIBUTE EXECUTE REPFOOTER TIMING
BREAK EXIT REPHEADER TTITLE
BTITLE GET RESERVED WORDS (SQL) UNDEFINE
CHANGE HELP RESERVED WORDS (PL/SQL) VARIABLE
CLEAR HOST RUN WHENEVER OSERROR
COLUMN INPUT SAVE WHENEVER SQLERROR
COMPUTE LIST SET
CONNECT PASSWORD SHOW
二:env | grep ORACLE ---檢視oracle的安裝目錄
[oracle@chenjh ~]$ env | grep oracle
USER=oracle
LD_LIBRARY_PATH=/oracle/product/10.2.0/db_1/lib:/usr/lib
ORACLE_BASE=/oracle
MAIL=/var/spool/mail/oracle
PATH=/oracle/product/10.2.0/db_1/bin:/usr/java/jdk1.6.0_21/bin:/usr/lib64/qt-3.3/bin:/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/home/oracle/bin
PWD=/home/oracle
HOME=/home/oracle
LOGNAME=oracle
ORACLE_HOME=/oracle/product/10.2.0/db_1
[oracle@chenjh ~]$
三:檢視表結構:
SQL> desc KPI_BI--ObjectName
名稱 是否為空? 類型
----------------------------------------- -------- ----------------------------
BIWORKJOB NOT NULL VARCHAR2(20)
BIWORKDATE NOT NULL DATE
BIFLAG VARCHAR2(2)
四:增加關閉提示資訊:
BIWORKJOB BIWORKDATE BIFL
---------------------------------------- -------------- ----
KPIHZ 20-9月 -10 Y
KPITZ 05-10月-10 Y
KPITZ 07-10月-10 Y
KPIZZ 07-10月-10 Y
QNS 15-10月-10 Y
KPITZ 15-10月-10 Y
KPIZZ 15-10月-10 Y
QNS 18-10月-10 Y
KPIZZ 18-10月-10 Y
KPIHZ 18-10月-10 Y
已選擇351行。--提示符
SQL> set feedback off ---關閉提示符
SQL> select * from KPI_BI;
SQL> set feedback on ----開啟提示符
五:變更提示資訊
SQL> set sqlprompt 'test>'---開多個視窗的時候改名防止搞錯
test>
傳回:
test> set sqlprompt 'SQL>'---傳回原來值
SQL>set time on ----把時間顯示開啟
15:08:04 SQL>set time off ----把時間顯示關閉
SQL>
六:顯示sql語句執行時間
SQL>set timing on ---開啟執行顯示時間
SQL>select * from KPI_BI
BIWORKJOB BIWORKDATE BIF
---------------------------------------- -------------- ---
已用時間: 00: 00: 00.57
SQL>set timing off ---關閉執行顯示時間
七:把格式顯示更好看一點
SQL>col biworkjob for a10 ---把biworkjob這一列設定為寬度為10
SQL>select * from kpi_bi;
BIWORKJOB BIWORKDATE BIFL
---------- -------------- ----
QNS 06-8月 -10 Y
KPITZ 06-8月 -10 Y
KPIZZ 06-8月 -10 Y
KPIHZ 06-8月 -10 Y
KPIZZ 07-8月 -10 Y
QNS 08-8月 -10 Y
KPIZZ 15-8月 -10 Y
SQL>col biworkjob for a50 ---把biworkjob這一列設定為寬度為50
BIWORKJOB BIWORKDATE BIFL
-------------------------------------------------- -------------- ----
KPIHZ 20-9月 -10 Y
KPITZ 05-10月-10 Y
KPITZ 07-10月-10 Y
KPIZZ 07-10月-10 Y
QNS 15-10月-10 Y
KPITZ 15-10月-10 Y
KPIZZ 15-10月-10 Y
QNS 18-10月-10 Y
KPIZZ 18-10月-10 Y
KPIHZ 18-10月-10 Y
八:list等指令的使用
SQL>list -------顯示剛才輸入的指令
1* select * from kpi_bi
SQL>list 1 -------顯示剛才輸入的第一行指令
當執行報錯時,顯示第幾行報錯
例如第2行報錯:把kpi_bi打成了kqi_bi
list 2
然後利用:
SQL>change /kqi_bi/kpi_bi
然後再執行:/即可
如果是批量出錯則可以用edit指令:
<a href="http://blog.51cto.com/attachment/201312/154726475.jpg" target="_blank"></a>
即可進行批量修改
九:儲存指令
有時候我們需要儲存指令:
用save:
SQL>save e:\e.sql ----儲存最後一次執行的指令
已建立 file e:\e.sql
SQL>save e:\e.sql append ---附加到之前儲存的指令
已将 file 附加到 e:\e.sql
還可以設定從開始然後儲存到最後的指令,利用spool即可
SQL>spool d:\d.sql
SQL>select * from kpi_bi where biworkjob='qns';
SQL>select * from kpi_bi where biworkjob='KPITZ';
SQL>spool off
要運作剛才儲存的腳本用
@或start都可以
SQL>@ e:/e.sql
QNS 06-8月 -10 Y
KPITZ 06-8月 -10 Y
KPIZZ 06-8月 -10 Y
SQL>@ d:/d.sql-----這個檔案是用spool儲存的,如下都報錯,是因為執行的結果也被儲存了;
SP2-0734: 未知的指令開頭 "SQL>select..." - 忽略了剩餘的行?
SQL>set termout off
SQL>spool d:\f.sql
SQL>select * from kpi_bi;
SQL>@ d:\f.sql
SQL>start d:\f.sql ----不再報錯
八:
SQL> show all ---顯示所有參數
SQL> show pagesize ---顯示pagesize的值
SQL> show linesize ---顯示lineseze的值
SQL> clear scr ---清屏
本文轉自 abc3486389 51CTO部落格,原文連結:http://blog.51cto.com/1336014/1338917