oracle數據庫有很多查詢工具,例如大名鼎鼎PLSQL,習慣了圖形界面之後,再來面對字符界面的sqlplus真是一種折磨,但不知那位仙人說過“存在就是合理”。
有時候恰恰需要在字符界面環境下工作,例如客戶現場,Unix、Linux、AIX操作系統下等等,本文討論的就是在sqlplus中的一些簡單的編輯命令。
1、登陸數據庫
sqlplus 用戶名/密碼[@實例名]
例如:sqlplus test/test@orac
注:1、實例名就是你的oracle_sid宏的定義,注意密碼跟實例之間沒有空格
2、斷開數據庫連接
sql < disconnect
3、更改數據庫連接用戶
sql < connect system/oracle@orac
4、設置行大小,頁大小
sql < set linesize 200
sql < set pagesize 10
5、執行腳本,“/” “r” “;” 皆可
sql < select count(*) from order
sql < /
6、列出上一腳本,l
SQL> l
1 select * from order
2* where num='8888'
1,2代表行號,帶*號代表當前行
7、切換行號,直接輸入數字行號即可
SQL> 1
1* select * from order
8、刪除行,del n,n代表行號數字
SQL> l
1 select * from order
2* where num='8888'
SQL> del 2
SQL> l
1* select * from order
9、增加行,i活動行後插入新行粘貼,a當前行後粘貼
SQL> l
1* select * from order
SQL> i where num='1021'
SQL> l
1 select * from order
2* where num='1021'
SQL> a tableb
1* select * from order tableb
*注意a後面要空至少兩個格,否則可能會出現operatortableb效果
10、修改內容 c原內容新內容
SQL> c tablebtablea
1* select * from order tablea
總結下:
l -- 列sql
n -- 切換活動行(n代表行數字)
a -- 活動行後增加(append)
i -- 活動行後插入新行增加(imput)
c -- 替換(change)
del n -- 刪除行n
/ -- 執行sql
11、設置默認編輯器
上面說了sqlplus裡一些基本語法,當然如果你習慣用vi的話,可以把默認編輯設置成vi,如下:
SQL> set _EDITOR=vi
SQL> ed
鍵入ed,則sqlplus自動切換到vi,在vi中修改sql,存盤,會自動重新讀入到sqlplus的緩沖區(類似sybase裡isql下直接鍵入vi)。
你還可以把編輯器設置存到配置文件,每次自動使用該配置;
修改$ORACLE_HOME/sqlplus/admin/glogin.sql配置文件,增加define _editor=vi即可,sqlplus啟動的時候會讀取glogin.sql腳本。