安徽新华电脑专修学院_安徽电脑培训_安徽电脑培训学校_合肥电脑培训

當前位置:首頁 > 網站舊欄目 > 學習園地 > 程序開發教程 > SQLPLUS命令的使用大全

SQLPLUS命令的使用大全
2010-01-17 11:07:00  作者:  來源:
1. 執行一個SQL腳本文件
SQL>start file_name
SQL>@ file_name
我們可以將多條sql語句保存在一個文本文件中,這樣當要執行這個文件中的所有的sql語句時,用上面的任一命令即可,這類似于dos中的批處理。
  
2. 對當前的輸入進行編輯
SQL>edit
  
3. 重新運行上一次運行的sql語句
SQL>/
  
4. 將顯示的內容輸出到指定文件
SQL> SPOOL file_name
   在屏幕上的所有內容都包含在該文件中,包括你輸入的sql語句。
  
5. 關閉spool輸出
SQL> SPOOL OFF
   只有關閉spool輸出,才會在輸出文件中看到輸出的內容。
  


6.顯示一個表的結構
SQL> desc table_name
  
7. COL命令:
主要格式化列的顯示形式。
該命令有許多選項,具體如下:
COL[UMN] [{ column|expr} [ option ...]]
Option選項可以是如下的子句:
ALI[AS] alias
CLE[AR]
FOLD_A[FTER]
FOLD_B[EFORE]
FOR[MAT] format
HEA[DING] text
JUS[TIFY] {L[EFT]|C[ENTER]|C[ENTRE]|R[IGHT]}
LIKE { expr|alias}
NEWL[INE]
NEW_V[ALUE] variable
NOPRI[NT]|PRI[NT]
NUL[L] text
OLD_V[ALUE] variable
ON|OFF
WRA[PPED]|WOR[D_WRAPPED]|TRU[NCATED]
  
1). 改變缺省的列標題
COLUMN column_name HEADING column_heading
For example:
Sql>select * from dept;
     DEPTNO DNAME                        LOC
---------- ---------------------------- ---------
         10 ACCOUNTING                   NEW YORK
sql>col  LOC heading location
sql>select * from dept;
    DEPTNO DNAME                        location
--------- ---------------------------- -----------
        10 ACCOUNTING                   NEW YORK
  
2). 將列名ENAME改為新列名EMPLOYEE NAME并將新列名放在兩行上:
Sql>select * from emp
Department  name           Salary
---------- ---------- ----------
         10 aaa                11         
SQL> COLUMN ENAME HEADING ’Employee|Name’
Sql>select * from emp
            Employee
Department  name           Salary
---------- ---------- ----------  
         10 aaa                11
note: the col heading turn into two lines from one line.
  
3). 改變列的顯示長度:
FOR[MAT] format
Sql>select empno,ename,job from emp;
      EMPNO ENAME      JOB        
---------- ----------     ---------
       7369 SMITH      CLERK      
       7499 ALLEN      SALESMAN   
7521 WARD       SALESMAN   
Sql> col ename format a40
      EMPNO ENAME                                    JOB
----------   ----------------------------------------         ---------
       7369 SMITH                                    CLERK
       7499 ALLEN                                    SALESMAN
       7521 WARD                                    SALESMAN
  
4). 設置列標題的對齊方式
JUS[TIFY] {L[EFT]|C[ENTER]|C[ENTRE]|R[IGHT]}
SQL> col ename justify center
SQL> /
      EMPNO           ENAME                   JOB
----------   ----------------------------------------       ---------
       7369 SMITH                                    CLERK
       7499 ALLEN                                    SALESMAN
7521 WARD                                     SALESMAN
對于NUMBER型的列,列標題缺省在右邊,其它類型的列標題缺省在左邊
  
5). 不讓一個列顯示在屏幕上
NOPRI[NT]|PRI[NT]
SQL> col job noprint
SQL> /
      EMPNO           ENAME
----------     ----------------------------------------
       7369 SMITH
       7499 ALLEN
7521 WARD
  
6). 格式化NUMBER類型列的顯示:
SQL> COLUMN SAL FORMAT $99,990
SQL> /
Employee
Department Name        Salary    Commission
---------- ---------- --------- ----------
30          ALLEN        $1,600    300
  
7). 顯示列值時,如果列值為NULL值,用text值代替NULL值
COMM NUL[L] text
SQL>COL COMM NUL[L] text
  
8). 設置一個列的回繞方式
WRA[PPED]|WOR[D_WRAPPED]|TRU[NCATED]
        COL1
--------------------
HOW ARE YOU?
  
SQL>COL COL1 FORMAT A5
SQL>COL COL1 WRAPPED
COL1
-----
HOW A
RE YO
U?
  
SQL> COL COL1 WORD_WRAPPED
COL1
-----
HOW
ARE
YOU?
  
SQL> COL COL1 WORD_WRAPPED
COL1
-----
HOW A
  
9). 顯示列的當前的顯示屬性值
SQL> COLUMN column_name
  
10). 將所有列的顯示屬性設為缺省值
SQL> CLEAR COLUMNS
  
8. 屏蔽掉一個列中顯示的相同的值
BREAK ON break_column
SQL> BREAK ON DEPTNO
SQL> SELECT DEPTNO, ENAME, SAL
FROM EMP
  WHERE SAL < 2500
  ORDER BY DEPTNO;
DEPTNO      ENAME         SAL
---------- ----------- ---------
10           CLARK        2450
MILLER      1300
20            SMITH       800
ADAMS       1100
  
9. 在上面屏蔽掉一個列中顯示的相同的值的顯示中,每當列值變化時在值變化之前插入n個空行。
BREAK ON break_column SKIP n
  
SQL> BREAK ON DEPTNO SKIP 1
SQL> /
DEPTNO ENAME SAL
---------- ----------- ---------
10 CLARK 2450
MILLER 1300
  
20 SMITH 800
ADAMS 1100
  
10. 顯示對BREAK的設置
SQL> BREAK
  
11. 刪除6、7的設置
SQL> CLEAR BREAKS
  
12. Set 命令:
該命令包含許多子命令:
SET system_variable value
system_variable value 可以是如下的子句之一:
APPI[NFO]{ON|OFF|text}
ARRAY[SIZE] {15|n}
AUTO[COMMIT]{ON|OFF|IMM[EDIATE]|n}
AUTOP[RINT] {ON|OFF}
AUTORECOVERY [ON|OFF]
AUTOT[RACE] {ON|OFF|TRACE[ONLY]} [EXP[LAIN]] [STAT[ISTICS]]
BLO[CKTERMINATOR] {.|c}
CMDS[EP] {;|c|ON|OFF}
COLSEP {_|text}
COM[PATIBILITY]{V7|V8|NATIVE}
CON[CAT] {.|c|ON|OFF}
COPYC[OMMIT] {0|n}
COPYTYPECHECK {ON|OFF}
DEF[INE] {&|c|ON|OFF}
DESCRIBE [DEPTH {1|n|ALL}][LINENUM {ON|OFF}][INDENT {ON|OFF}]
ECHO {ON|OFF}
EDITF[ILE] file_name[.ext]
EMB[EDDED] {ON|OFF}
ESC[APE] {|c|ON|OFF}
FEED[BACK] {6|n|ON|OFF}
FLAGGER {OFF|ENTRY |INTERMED[IATE]|FULL}
FLU[SH] {ON|OFF}
HEA[DING] {ON|OFF}
HEADS[EP] {||c|ON|OFF}
INSTANCE [instance_path|LOCAL]
LIN[ESIZE] {80|n}
LOBOF[FSET] {n|1}
LOGSOURCE [pathname]
LONG {80|n}
LONGC[HUNKSIZE] {80|n}
MARK[UP] HTML [ON|OFF] [HEAD text] [BODY text] [ENTMAP {ON|OFF}] [SPOOL
{ON|OFF}] [PRE[FORMAT] {ON|OFF}]
NEWP[AGE] {1|n|NONE}
NULL text
NUMF[ORMAT] format
NUM[WIDTH] {10|n}
PAGES[IZE] {24|n}
PAU[SE] {ON|OFF|text}
RECSEP {WR[APPED]|EA[CH]|OFF}
RECSEPCHAR {_|c}
SERVEROUT[PUT] {ON|OFF} [SIZE n] [FOR[MAT] {WRA[PPED]|WOR[D_
WRAPPED]|TRU[NCATED]}]
SHIFT[INOUT] {VIS[IBLE]|INV[ISIBLE]}
SHOW[MODE] {ON|OFF}
SQLBL[ANKLINES] {ON|OFF}
SQLC[ASE] {MIX[ED]|LO[WER]|UP[PER]}
SQLCO[NTINUE] {> |text}
SQLN[UMBER] {ON|OFF}
SQLPRE[FIX] {#|c}
SQLP[ROMPT] {SQL>|text}
SQLT[ERMINATOR] {;|c|ON|OFF}
SUF[FIX] {SQL|text}
TAB {ON|OFF}
TERM[OUT] {ON|OFF}
TI[ME] {ON|OFF}
TIMI[NG] {ON|OFF}
TRIM[OUT] {ON|OFF}
TRIMS[POOL] {ON|OFF}
UND[ERLINE] {-|c|ON|OFF}
VER[IFY] {ON|OFF}
WRA[P] {ON|OFF}
  
1). 設置當前session是否對修改的數據進行自動提交
SQL>SET AUTO[COMMIT] {ON|OFF|IMM[EDIATE]| n}
  
2).在用start命令執行一個sql腳本時,是否顯示腳本中正在執行的SQL語句
SQL> SET ECHO {ON|OFF}
  
3).是否顯示當前sql語句查詢或修改的行數
SQL> SET FEED[BACK] {6|n|ON|OFF}
   默認只有結果大于6行時才顯示結果的行數。如果set feedback 1 ,則不管查詢到多少行都返回。當為off 時,一律不顯示查詢的行數
  
4).是否顯示列標題
SQL> SET HEA[DING] {ON|OFF}
當set heading off 時,在每頁的上面不顯示列標題,而是以空白行代替
  
5).設置一行可以容納的字符數
SQL> SET LIN[ESIZE] {80|n}
   如果一行的輸出內容大于設置的一行可容納的字符數,則折行顯示。
  
6).設置頁與頁之間的分隔
SQL> SET NEWP[AGE] {1|n|NONE}
當set newpage 0 時,會在每頁的開頭有一個小的黑方框。
當set newpage n 時,會在頁和頁之間隔著n個空行。
當set newpage none 時,會在頁和頁之間沒有任何間隔。
  
7).顯示時,用text值代替NULL值
SQL> SET NULL text
  
8).設置一頁有多少行數
SQL> SET PAGES[IZE] {24|n}
如果設為0,則所有的輸出內容為一頁并且不顯示列標題
  
9).是否顯示用DBMS_OUTPUT.PUT_LINE包進行輸出的信息。
SQL> SET SERVEROUT[PUT] {ON|OFF}  
在編寫存儲過程時,我們有時會用dbms_output.put_line將必要的信息輸出,以便對存儲過程進行調試,只有將serveroutput變量設為on后,信息才能顯示在屏幕上。
  
10).當SQL語句的長度大于LINESIZE時,是否在顯示時截取SQL語句。
SQL> SET WRA[P] {ON|OFF}
   當輸出的行的長度大于設置的行的長度時(用set linesize n命令設置),當set wrap on時,輸出行的多于的字符會另起一行顯示,否則,會將輸出行的多于字符切除,不予顯示。
  
11).是否在屏幕上顯示輸出的內容,主要用與SPOOL結合使用。
SQL> SET TERM[OUT] {ON|OFF}
   在用spool命令將一個大表中的內容輸出到一個文件中時,將內容輸出在屏幕上會耗費大量的時間,設置set termspool off后,則輸出的內容只會保存在輸出文件中,不會顯示在屏幕上,極大的提高了spool的速度。
  
12).將SPOOL輸出中每行后面多余的空格去掉
SQL> SET TRIMS[OUT] {ON|OFF}  
    
13)顯示每個sql語句花費的執行時間
set TIMING  {ON|OFF}
  
14.修改sql buffer中的當前行中,第一個出現的字符串
C[HANGE] /old_value/new_value
SQL> l
   1* select * from dept
SQL> c/dept/emp
   1* select * from emp
  
15.編輯sql buffer中的sql語句
EDI[T]
  
16.顯示sql buffer中的sql語句,list n顯示sql buffer中的第n行,并使第n行成為當前行
L[IST] [n]
  
17.在sql buffer的當前行下面加一行或多行
I[NPUT]
  
18.將指定的文本加到sql buffer的當前行后面
A[PPEND]
SQL> select deptno,
   2  dname
   3  from dept;
     DEPTNO DNAME
---------- --------------
         10 ACCOUNTING
         20 RESEARCH
         30 SALES
         40 OPERATIONS
  
SQL> L 2
   2* dname
SQL> a ,loc
   2* dname,loc
SQL> L
   1  select deptno,
   2  dname,loc
   3* from dept
SQL> /
  
     DEPTNO DNAME          LOC
---------- -------------- -------------
         10 ACCOUNTING     NEW YORK
         20 RESEARCH       DALLAS
         30 SALES          CHICAGO
         40 OPERATIONS     BOSTON
  
19.將sql buffer中的sql語句保存到一個文件中
SAVE file_name
  
20.將一個文件中的sql語句導入到sql buffer中
GET file_name
  
21.再次執行剛才已經執行的sql語句
RUN
or
/
  
22.執行一個存儲過程
EXECUTE procedure_name
  
23.在sql*plus中連接到指定的數據庫
CONNECT user_name/passwd@db_alias
  
24.設置每個報表的頂部標題
TTITLE
  
25.設置每個報表的尾部標題
BTITLE
  
26.寫一個注釋
REMARK [text]
  
27.將指定的信息或一個空行輸出到屏幕上
PROMPT [text]
  
28.將執行的過程暫停,等待用戶響應后繼續執行
PAUSE [text]
  
Sql>PAUSE Adjust paper and press RETURN to continue.
  
29.將一個數據庫中的一些數據拷貝到另外一個數據庫(如將一個表的數據拷貝到另一個數據庫)
COPY {FROM database | TO database | FROM database TO database}
{APPEND|CREATE|INSERT|REPLACE} destination_table
[(column, column, column, ...)] USING query
  
sql>COPY FROM SCOTT/TIGER@HQ TO JOHN/CHROME@WEST  
create emp_temp
USING SELECT * FROM EMP
  
30.不退出sql*plus,在sql*plus中執行一個操作系統命令:
HOST
  
Sql> host hostname
該命令在windows下可能被支持。
  
31.在sql*plus中,切換到操作系統命令提示符下,運行操作系統命令后,可以再次切換回sql*plus:
!
  
sql>!
$hostname
$exit
sql>
  
該命令在windows下不被支持。
  
32.顯示sql*plus命令的幫助
HELP
如何安裝幫助文件:
Sql>@ ?sqlplusadminhelphlpbld.sql ?sqlplusadminhelphelpus.sql
Sql>help index
  
33.顯示sql*plus系統變量的值或sql*plus環境變量的值
Syntax
SHO[W] option
where option represents one of the following terms or clauses:
system_variable
ALL
BTI[TLE]
ERR[ORS] [{FUNCTION|PROCEDURE|PACKAGE|PACKAGE BODY|
TRIGGER|VIEW|TYPE|TYPE BODY} [schema.]name]
LNO
PARAMETERS [parameter_name]
PNO
REL[EASE]
REPF[OOTER]
REPH[EADER]
SGA
SPOO[L]
SQLCODE
TTI[TLE]
USER
  
1) . 顯示當前環境變量的值:
Show all
  
2) . 顯示當前在創建函數、存儲過程、觸發器、包等對象的錯誤信息
Show error
當創建一個函數、存儲過程等出錯時,變可以用該命令查看在那個地方出錯及相應的出錯信息,進行修改后再次進行編譯。
  
3) . 顯示初始化參數的值:
show PARAMETERS [parameter_name]
  
4) . 顯示數據庫的版本:
show REL[EASE]
  
5) . 顯示SGA的大小
show SGA
  
6). 顯示當前的用戶名
show user 
安徽新華電腦學校專業職業規劃師為你提供更多幫助【在線咨詢
主站蜘蛛池模板: 原创软文新闻稿-网站SEO文章代写-征文演讲稿代笔-写作阁 | 心心床垫_睡眠床垫-安徽瑶海心心工贸有限公司 | 立式离心泵_不锈钢自吸泵_液下泵_变频无负压供水设备-大东海泵业无锡有限公司 | 厦门鼎星五金制品有限公司-厦门弹簧,电池簧,扣簧| 科衣洛定制衣柜,书柜,厨柜,衣帽间,电视柜,酒柜,餐厅柜,门厅柜,鞋柜——科衣洛全屋定制官网 | 环保白电油_甲醇_二价酸酯DBE_防白水-【名亿新材料】 | 冷缩电缆附件_热缩电缆附件-乐清安尚电气有限公司 | 幼儿园设计公司/南昌酒店装修/办公室/餐厅/民宿/店面/展厅/装修设计公司-益昌装饰集团 | 山东鑫佳日化_洗衣粉生产厂家,从事洗衣粉加工出口 | 混凝土修补-清水混凝土保护剂-仿清水混凝土-混凝土装修-混凝土色差处理-混凝土色差修复剂-德州唐荣建筑装饰工程有限公司 | 噪声治理_噪音治理公司「杭州创雅环境科技」 | 制砂机_制沙一体机_青石制沙机-华盛铭设备厂家 | 新洲际教育-一站式留学解决方案领航者【官网】| 消防车厂家_东风水罐泡沫消防车价格图片吨位-湖北新东日专用汽车有限公司 | 全自动冷冻研磨仪-高通量组织研磨仪厂家-「杭州宋慈智能科技」 | 青州市昌达机械设备有限公司_洗石机-洗砂机-筛沙机-砂石分离机-洗轮机-制砂机 | 碎料机_拌料机_吸料机_温控箱_烤料斗_模温机_东莞索亿塑料破碎机厂家 | 信管飞软件官网 - 亚拓软件旗下精细化管理软件、进销存管理软件、混凝土ERP、通风设备ERP、风管报价软件、出纳软件、送货单打印软件、ERP软件等免费下载 | 举升机,登高梯,升降平台,升降车,升降机,高空作业平台车 | 天空彩票天下彩,天空彩天空彩票免费资料,天空彩票与你同行开奖,天下彩正版资料大全 | 无塔供水_全自动无塔供水设备_石家庄工泉水处理_无塔供水器 | 辣椒烘干机-百信机械提供大中小型辣椒烘干机房设备视频图片厂家价格多少钱 | 陕西筱润智能科技有限公司 干部人事智能档案柜 智能密集架 智能档案柜 部队选层文件智能柜 智能枪弹柜 财务智能档案柜 边防武警智能密集架 医院智能档案柜 部队选层文件智能柜智能枪弹柜 学校医院文件柜 企事业单位公检法智能文件柜 生产厂家-筱润智能科技有限公司 RFID射频智能密集架 全自动智能选层档案柜 智能密保柜 枪柜部队营房营具床桌椅办公家具 办公用品档案盒设备货架 全自动智能选层柜生产厂家-筱润智能科技有限公司 | 深圳同步带轮_东莞齿轮加工_东莞同步轮厂家-东莞东城精胜机械配件厂 | 球形钢支座,粘滞阻尼器,抗震球型钢支座,盆式橡胶支座,调谐质量阻尼器,屈曲约束支撑-衡水路泽科技 | 自动龙门裁断机-四柱|液压裁断机-吸塑裁断机-东莞市源德机械科技有限公司 | 洗车机-自动汽车洗车机-全自动洗车设备-全自动电脑洗车机-北京自然绿环境科技发展有限公司 | 树脂井盖,复合井盖,井盖厂家-山东宝盖新材料 | 线性排水沟-成品排水沟-树脂排水沟-树脂混凝土,缝隙式排水沟-时利和 | 深圳人才网_深圳招聘网_【官方网站】 | 河南新飞飞鸿实业有限公司| 桥梁支座更换_桥梁检测车租赁_高空作业车出租_支座更换_伸缩缝安装_隧道防水_养护加固_维修_出租_衡水庆兴桥梁养护工程有限公司 桥梁养护|桥梁维修加固|隧道裂缝修补|支座更换|管道堵水气囊|衡水众拓路桥养护有限公司 | 激光清洗机_激光除锈机_激光焊接机 - 上海锡昊激光科技有限公司 激光切管机_等离子切管机_相贯线切管机厂家|服务为先-山东美峰智能设备有限公司 | 湖南净声源环保科技有限公司是一家专业从事噪声治理和建筑声学设计生态环境综合治理服务的企业,专业从事株洲电梯隔音治理,湘潭中央空调降噪处理,衡阳邵阳冷却塔噪音治理,岳阳常德大型风机噪声隔音降噪,张家界空压机噪声治理,益阳配电房变压器噪声治理,专业郴州永州工厂企业车间噪声治理,怀化娄底专业机械设备减振降治理,武汉噪音治理隔音降噪公司,孝感噪音治理,立式球磨机的噪声控制,专业隔音降噪公司,、以及各类机械动力设备减振降噪噪声治理的公司,同时为客户提供咨询与解决方案 | 无尘车间_净化工程_GMP食品药品化妆品电子厂无尘净化车间_无尘室 | 陕西筱润智能科技有限公司 干部人事智能档案柜 智能密集架 智能档案柜 部队选层文件智能柜 智能枪弹柜 财务智能档案柜 边防武警智能密集架 医院智能档案柜 部队选层文件智能柜智能枪弹柜 学校医院文件柜 企事业单位公检法智能文件柜 生产厂家-筱润智能科技有限公司 RFID射频智能密集架 全自动智能选层档案柜 智能密保柜 枪柜部队营房营具床桌椅办公家具 办公用品档案盒设备货架 全自动智能选层柜生产厂家-筱润智能科技有限公司 | 喷涂机器人|自动喷涂生产线|自动喷涂设备|自动化生产线-深圳市荣德机器人科技有限公司 | 陕西筱润智能科技有限公司 干部人事智能档案柜 智能密集架 智能档案柜 部队选层文件智能柜 智能枪弹柜 财务智能档案柜 边防武警智能密集架 医院智能档案柜 部队选层文件智能柜智能枪弹柜 学校医院文件柜 企事业单位公检法智能文件柜 生产厂家-筱润智能科技有限公司 RFID射频智能密集架 全自动智能选层档案柜 智能密保柜 枪柜部队营房营具床桌椅办公家具 办公用品档案盒设备货架 全自动智能选层柜生产厂家-筱润智能科技有限公司 | 一体式电磁流量计_分体式电磁流量计_卫生级电磁流量计_卫生型电磁流量计_电池供电电磁流量计_卡箍式电磁流量计_废水电磁流量计_德克森仪表(淮安)有限公司官网 | 青岛大倾角输送带厂家_橡胶挡边输送带_波纹状挡边输送带_大倾角输送带型号-青岛朗森橡胶有限公司 | 上饶市新达新包装材料有限公司|