SQL Plus Set引數詳解

2021-06-20 12:21:07 字數 4418 閱讀 3218

利用sql*plus維護系統變數(也稱set變數)可為sql*plus互動建立乙個特殊的環境,如:設定number資料的顯示寬度,設定每頁的行數,設定列的寬度等。可用set命令改變這些系統變數,也可用show命令列出它們。以下是全部的用法,使用set命令的語法如下:

set  系統變數值

其中系統變數及其可選值如下:

arraysize

設定一批的行數,是sqlplus一次從資料庫獲取的行數,有效值為1至5000。大的值可提高查詢和子查詢的有效性,可獲取許多行,但也需要更多的記憶體。當超過1000時,其效果不大。

autocommit

控制oracle對資料庫的修改的提交。設定on時,在oracle執行每個sql命令或pl/sql塊後對資料庫提交修改;設定置off時,則制止自動提交,需要手工地提交修改。例如用sql的commit命令,immediate功能同on。

blockterminator

用於結束pl/sql塊。要執行塊時必須發出run命令或/命令.

cmdsep

用於分隔在一行中輸入的多個sql/plus命令。on或off控制在一行中是否能輸入多個命令。on時將自動地將命令分隔符設為分號(其中c表示所置字元)。

compatibility

指定當前所連線的oracle版本。如果當前oracle的版本為5,則置compatibility為v5,為版本6時置成v6,為版本7時置成v7。如果希望由資料庫決定該設定,則置成native。

concat

設定結束一替換變數引用的字元。在中止替換變數引用字元之後可跟所有字元作為體會組成部分,否則sqlplus將解釋為替換變數名的一部分。當concat開關為on時,sqlplus可重置concat的值為點(.)。

copycommit

控制copy命令提交對資料庫修改的批數。每次拷貝n批後將提交到目標資料庫。有效值為0到5000。可用變數arraysize設定一批的大小。如果置copycommit為0,則僅在copy操作結束時執行一次提交。

crtcrt

改變sqlplus runform命令使用的預設crt檔案。如果設定crt不包含什麼,則crt僅包含』』』』。如果在乙個form的系統呼叫期間要使用new.crt(預設crt是old.crt)。可按下列形式呼叫form:

sql>runform –c new form名

或者sql>set crt new

sql>runform form名

第二中方法儲存crt選擇以致在下次執行runform命令(是在同一次sqlplus互動中)時,不需要指定。

define

設定在替換變數時所使用的字元。on或off控制sqlplus是否掃瞄替換變數的命令及用他們的值代替。define的on或off的設定控制scan變數的設定。

echo

控制start命令是否列出命令檔案中的每一命令。為on時,列出命令;為off時,制止列清單。

embedded

控制每一報表在一頁中開始的地方。為off時,迫使每一報表是在新頁的頂部開始;為on時,執行一報表在一頁的任何位置開始。

escape

定義作為escape字元的字元。為off時,使escape字元不起作用;為on時,使escape字元起作用。

feedback

顯示由查詢返回的記錄數。on和off置顯示為開或關。置feedback為on時,等價於置n為1;如果置feedback為0 等價於將它置成off。

flush

控制輸出送至使用者的顯示裝置。為off時,執行作業系統做緩衝區輸出;為on時,不允許緩衝。僅當非互動方式執行命令檔案時使用off 這樣可減少程式i/o總數,從而改進效能。

heading

控制報表中列標題的列印。為on時,在報表中列印列標題;為off時,禁止列印列標題。

headsep

定義標題分隔字元。可在column命令中使用標題分隔符,將列標題分成多行。on和off將標題分隔置成開或關。當標題分隔為關(off)時,sqlplus列印標題分隔符像任何字元一樣。

linesize

設定sqlplus在一行中顯示的字元總數,它還控制在ttitle和btitle中對準中心的文字和右對齊文字。可定義linesize為1至最大值,其最大值依賴於作業系統。

long

為顯示和拷貝long型別值的最大寬度的設定。對於oracle7,n的最大值為2g位元組;對於版本6,最大值為32767。

longchunksize

為sqlplus檢索long型別值的增量大小。由於記憶體的限制,可按增量檢索,該變數僅應用於oracle7。

maxdata

n設定sqlplus可處理的最大行寬字元數,其預設值和最大值在不同作業系統中是可變的。

newpage

設定每一頁的頭和頂部標題之間要列印的空行數。如果為0,在頁之間送一換號符,並在許多終端上清屏。

null

text

設定表示空值(null)的文字。如果null沒有文字,則顯示空格(預設時)。使用column命令中的null子句可控制null變數對該列的設定。

numformat

格式設定顯示數值的預設格式,該格式是數值格式。

numwidth

對顯示數值設定預設寬度。

pagesize

設定從頂部標題至頁結束之間的行數。在11英吋長的紙上列印報表,其值為54,上下各留一英吋(newpage值為6)。

pause

在顯示報表時,控制終端滾動。在每一暫停時,必須按return鍵。on將引起sqlplus在每一報表輸出頁開始時暫停。所指定的文字是每一次sqlplus暫停時顯示的文字。如果要鍵入多個詞,必須用單引號將文字括起來。

recsep

recsepchar

指定顯示或列印記錄分行符的條件。乙個記錄分行符,是由recsepchar指定的字元組成的單行。空格為recsepchar的預設字元。

scan

控制對存在的替換變數和值的掃瞄。off禁止替換變數和值的處理;on則允許正常處理。

serveroutput

size

控制在sqlplus中的儲存過程是否顯示輸出。off時為禁止;on時則顯示輸出。size設定緩衝輸出的位元組數,預設值為2000。n不能小於2000或大於一百萬。

showmode

控制sqlplus在執行set命令時是否列出其新老值old或new的設定。

space

設定輸出列之間空格的數目,其最大值為10。

sqlcase

先於執行之前,將sql命令和pl/sql塊的大小寫進行轉換。sqlplus將轉換命令中的全部文字,包括帶引號的直接量和標示符。sqlcase不改變sql緩衝區本身。

sqlcontinue

在一附加行上繼續一sqlplus命令時,sqlplus以該設定的字串行進行提示。

sqlnumber

為sql命令和pl/sql塊的第二行和後繼行設定提示。為on時,提示行號;為off時,提示設定為sqlprompt的值。

sqlperfix

設定sqlplus字首字元。在鍵入一sql命令或pl/sql塊時,可在單獨行上鍵入一sqlplus命令,由sqlplus的字首字元做字首。sqlplus直接執行該命令,不影響sql命令或pl/sql塊。字首字元必須是非字母數字字元。

sqlprompt

設定sqlplus的命令提示符。

sqlterminator

設定用於結束和執行sql命令的字元。off意味著sqlplus不識別命令終止符,用鍵入空行來結束sql命令;on重設定終止符為預設的分號。

suffix

設定預設檔案的字尾。sqlplus在命令中使用,來引用命令檔案。suffix不控制輸出(spool)檔案的副檔名。

tab決定sqlplus在終端輸出中如何格式化空白空間。為off時,在輸出中使用空格格式化空白空間;為on時,用tab字元。tab的預設值依賴於系統,用show tab命令可檢視該預設值。

termout

控制由檔案執行命令所產生的輸出的顯示。off禁止顯示,以致從乙個命令檔案假離線輸出,在螢幕上看不到輸出;on時顯示輸出。termout off 不影響互動地進行命令的輸出。

time

控制當前日期的顯示。on時,在每條命令提示前顯示當前時間;off時禁止時間的顯示。

timing

控制時間統計的顯示。on時,顯示每乙個執行的sql命令或pl/sql塊的時間統計;off時,禁止每乙個命令的時間統計。

trimout

決定sqlplus在每一顯示行的末端是否允許帶空格。on時將每行尾部的空格去了,特別當從慢速的通訊裝置訪問sqlplus時可改進效能;off時允許sqlplus顯示尾部的空格。trimout on不影響假離線輸出。設定tab on時,sqlplus忽略trimout on。

underline

設定用在sqlplus報表中下劃線列標題的字元。on或off將下劃線置成開或關。

verify

控制sqlplus用值替換前、後是否列出命令的文字。on時顯示文字;off時禁止列清單。

wrap

SQL PLUS SET命令引數詳解

sql plus維護系統變數,也稱set變數,利用它可為sql plus互動建立乙個特殊的環境,如 設 置number資料的顯示寬度 設定每頁的行數 設定列的寬度等。可用set命令改變這些系統變 量,也可用show命令列出它們.使用set命令的語法如下 set 系統變數 值 系統變數說明 array...

SQL plus set 環境變數引數詳解

sqlplus set 引數詳解轉個帖子,很多人對sqlplus 的引數不了解 sql plus維護系統變數,也稱set變數,利用它可為sql plus互動建立乙個特殊的環境,如 設 置number資料的顯示寬度 設定每頁的行數 設定列的寬度等。可用set命令改變這些系統變 量,也可用show命令列...

SQL PLUS set命令的語法

sql plus維護系統變數,也稱set變數,利用它可為sql plus互動建立乙個特殊的環境,如 設 置number資料的顯示寬度 設定每頁的行數 設定列的寬度等。可用set命令改變這些系統變 量,也可用show命令列出它們.使用set命令的語法如下 set 系統變數 值 系統變數說明 array...