sql*plus的常用命令:
sql*plus的命令分為兩種:sql命令和sql*plus命令。sql命令主要進行對資料庫的操作,sql*plus命令主要用來設定查詢結果的
顯示格式
二者的區別:
sql*plus:不存在緩衝區中,不以分號結束
sql:存在緩衝區中,以分號結束。
1)連線和斷開資料庫連線命令
connect 使用者名稱/密碼@主機字串
可簡寫為:conn 使用者名稱/密碼@主機字串 例:connect scott/123456@orcl
***這裡有一點需要注意,由於dba的許可權較大,需要進行特別的驗證,oracle設計了兩種身份驗證的方式 一種是:將驗證整合到服
務器的作業系統上,在伺服器中建立oracle dba使用者組,只要是屬於該組的系統使用者均可以執行oracledba的操作, 而不需要
額外的驗證。 另一種是通過oracle的口令檔案。dba組的位置在:
計算機-----》右鍵管理----》本地使用者組-------》組----------ora_dba組
例:connect fa/faf as sysdba@orcl 無論密碼和使用者名稱是否正確,都會連線到dba中
斷開是資料庫
disconnect:斷開資料庫的連線 可以簡寫為 disc
2)檢視表,檢視,同義詞的結構
命令格式:describe 表名/desc 表名
3)sql*plus設定會話命令
環境設定命令可以在sql*plus的選單下用圖形介面配置,也可以用set命令來設定。
用set命令 :
set 環境變數的名 值 //只作用與當前會話 當要檢視當前設定時可以用命令列 show 環境變數名 值
1設定空格的寬度
set space 值 set space 10
2設定一次提取(fetch)的行目 取值範圍為1~~5000,預設值為:15.當有較長子欄位時,應該設定的小點。比如設定為其值為1。
set arraysize 值
3設定顯示的行的寬度 //設定顯示行的寬度,預設的寬度為80 當調整cmd的時候需要調整此項
set linesize 值
4設定顯示一頁的寬度
set pagesiez 值 //其值應該大於2 從第一行就開始算起。當總行數為n時 set pagesize n-1和n的效果是一樣的~~~
5設定自動提交
set auto[commit] //on表示自動提交,off表示關閉自動提交,imm表示立刻提交,n表示在執行玩n條語句後
進行提交。
6設定中斷指令
set pause //當設定為on的時候,在select語句發出後,需要按enter鍵才可以執行相應的結果。
7設定標題欄位的有無
set heading on顯示字段,off是不顯示
8設定頁面開頭的回車的個數
set newpage 設定頁面開頭的空格的個數。
9去掉每行後面的換行符
set trimout 設定好每行後面的換行符
10定製一定的條件
set term set terms 固定詞語;定條件
11設定結果的分隔字元
select name||'|'||***||'|'||age from zh; //字元將會以'|'結束
12設定執行命令是否顯示
set echo on:顯示檔案中的每條命令及其執行結果;
set echo off:不顯示檔案中的命令,只顯示其執行結果。
13設定變數的時候是否驗證
set verify
14設定臨時儲存變數
&臨時變數名
select &n from zh;
15設定臨時變數標記
預設的情況下臨時標記為'&'
你可以通過 set define '符號' 將臨時變數的儲存標記為您想要的標記。
例:set define '@'
select @n from zh;
例1:sql> select @n from zh where name='@m';
輸入 n 的值: name
輸入 m 的值: 美女
原值 1: select @n from zh where name='@m'
新值 1: select name from zh where name='美女'
name
------------------------------
美女例2:如何讓多個重複變數只輸入一次
sql> select name from @@n where name='@@n';
輸入 n 的值: zh
原值 1: select name from @@n where name='@@n'
新值 1: select name from zh where name='zh'
name
------------------------------
zh***sqlplus中的set命令sql>set colsep'|'; //-域輸出分隔符
sql>set echo off; //顯示start啟動的指令碼中的每個sql命令,預設為on
sql> set echo on //設定執行命令是是否顯示語句
sql> set feedback on; //設定顯示「已選擇xx行」
sql>set feedback off; //回顯本次sql命令處理的記錄條數,預設為on
sql>set heading off; //輸出域標題,預設為on
sql>set pagesize 0; //輸出每頁行數,預設為24,為了避免分頁,可設定為0。
sql>set linesize 80; //輸出一行字元個數,預設為80
sql>set numwidth 12; //輸出number型別域長度,預設為10
sql>set termout off; //顯示指令碼中的命令的執行結果,預設為on
sql>set trimout on; //去除標準輸出每行的拖尾空格,預設為off
sql>set trimspool on; //去除重定向(spool)輸出每行的拖尾空格,預設為off
sql>set serveroutput on; //設定允許顯示輸出類似dbms_output
sql> set autotrace on; //設定允許對執行的sql進行分析
set verify off //可以關閉和開啟提示確認資訊old 1和new 1的顯示.
4)spool假離線命令
spool(假離線命令)可以用於轉存執行的命令及結果,spool是oracle提供為把sql查詢結果導向到指定檔案中,要注意是spool是
sqlplus的命令,不是sql語法。 spool命令可以簡寫為 spo
例:conn scott/tiger@orcl
spool f:\a.txt
select * from user;
spool off
***spool out與spool off的區別
***spool out:stops spooling and sends the file to your host computer's standard (default) printer.
***spool off:stops spooling.
***到這個,大家應該就明白了,spool out比spool off多了乙個把檔案傳送到標準列印輸出的動作。記得itpub論壇上有位大
***蝦總結得更簡練「out = off + print」。
7)執行sql指令碼檔案
1 命令格式 start 檔名
2 命令格式 @ 檔名 //如果sql指令碼檔案中又對其他指令碼的呼叫,就使用@@ start
例子: @ f:\a.sql或者start f:\a.txt 檔案的字尾可以為 .sql .txt
8)執行儲存過程命令
execute 儲存過程函式名
9)設定列顯示屬性
column name format a10; //設定列顯示10個字元的寬度 column可以簡寫為col
10)show
檢視當前的例程引數 如 show user
11)help
help [命令名] 例子:help start
Oracle sqlplus中常用的set命令
set line 1000 設定行的長度 set pagesize 0 輸出不換頁 set feedback off 預設的當一條sql發出的時候,oracle會給乙個反饋,比如說建立表的時候,如果成功命令行會返回類似 table created的反饋,off後不顯示反饋 set heading o...
oracle sqlplus常用命令
sqlplus user pwd dbnamesqlplus nologshow user alter user user identified bypassword select name from v database select from global name select from v ...
oracle sqlplus常用命令
1 connect 或conn,還有 disc onnect 斷開連線 2 修改密碼命令 passw ord 使用者名稱 然後再輸入新密碼,舊密碼 3 show user 4 clear screen 5 set linesize 120 set pagesize 20 引數20表示每一頁大小的正整...