1. 程式人生 > >oracle命令列操作命令

oracle命令列操作命令

sqlplus中檢視Oracle中有哪些已經建立好的使用者

select username from dba_users

在Oracle中檢視所有的表:

select * from tab/dba_tables/dba_objects/cat;

看使用者建立的表 :

select table_name from user_tables; //當前使用者的表

select table_name from all_tables; //所有使用者的表

select table_name from dba_tables; //包括系統表

1、設定sqlplus模式顯示總行數(當前連線生效):
show pagesize; –檢視目前的pagesize
set pagesize 300; –設定pagesize為300
2
設定sqlplus模式顯示行寬度(當前連線生效):
show linesize; –檢視當前的linesize寬度
set linesize 300; –設定linesize寬度
3
修改安裝目錄glogin.sql檔案(永久生效):
set pagesize 300;
set linesize 300;

  1. [程式碼][SQL]程式碼
顯示當前的顯示條數(預設是14):
show pagesize;
設定顯示條數為100條:
set pagesize 100;
顯示當前的顯示列數:
show linesize;
設定顯示列數為100:
set linesize 100;

生產環境的db沒法直接用開發工具(比如TOAD、PL/SQL Developer )來連線並進行資料操作,因為有很嚴格的許可權控制(為了db安全考慮),我們開發人員能用的唯一工具就是通過sshterm登入到db server上面,然後用指定的受限使用者名稱通過sqlplus登入,然後進行操作;習慣了使用開發工具的便利,初次回到sqlplus的話會非常不習慣,但只要我們設定一些簡單的引數,就可以大大提高sqlplus的可用性;
另外,就是需要從db中匯出資料到檔案,預設情況下,匯出檔案中會有很多的垃圾資訊,我們需要將他清理掉,此時相關的設定就很有作用啦;
sqlplus的優化主要是通過兩種方式來進行:
1、系統引數設定,通過set操作實現(可以搭配show檢視配置項,show all可檢視所有系統引數設定列表),比如set linesize 180;
2、顯示格式設定,通過column操作實現,比如column aa format a32;
3、Session引數設定,通過SQL操作實現,比如alter session set …;
下面介紹下常用sqlplus set引數列表,更全面的set集合請參考oracle官方文件;
set linesize 180 設定每行顯示的字元總數
set pagesize 100 設定每頁顯示的行數
set feedback on/off 設定是否顯示已選擇XX行
set heading on/off 設定是否顯示列名
set time on/off 設定是否顯示當前系統時間
set timing on/off 設定是否顯示每條SQL執行消耗的時間
set termout on/off 設定在執行sql檔案時是否在控制檯列印相關資訊
set trimout on/off 設定是否去除標準輸出每行的拖尾空格
set trimspool on/off 設定是否去除spool輸出檔案中每行的拖尾空格
顯示格式的設定主要由column命令完成,其語法為:
column columnName [format format] [heading heading]
比如column login_id format a32 heading 旺旺ID
其中heading 旺旺ID 表示結果集中login_id欄位名顯示為:旺旺ID;
功能與SELECT LOGIN_ID AS 旺旺ID FROM …一樣;
Session引數的設定就很專業和複雜了,一般開發人員不會涉及到,但是有兩個引數我們可以自行設定;
其一是設定日期時間型欄位的顯示格式,在sqlplus中執行一下命令即可:
alter session set nls_date_format=’yyyy-mm-dd hh24:mi:ss’;
其二是設定當前session的字元編碼(編碼隨各DB會有不同),以便能夠顯示中文;比如執行以下命令:
alter session set nls_lang=’AMERICAN_AMERICA.ZHS16GBK’;
當然,這兩個引數也可以直接放在OS當前使用者的環境變數中,這樣就不必每次進入sqlplus之後還需要重複執行以上的命令,會方便很多;