Oracle sqlplus 常用命令總結

2021-06-29 07:17:00 字數 4247 閱讀 9243

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表示每一頁大小的正整...