您的位置:首页 > 数据库

SQL*PLUS命令的使用大全(一)

2009-04-25 20:54 423 查看
Normal
0

7.8 磅
0
2

false
false
false

MicrosoftInternetExplorer4

/* Style Definitions */
table.MsoNormalTable
{mso-style-name:普通表格;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin:0cm;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";
mso-ansi-language:#0400;
mso-fareast-language:#0400;
mso-bidi-language:#0400;}

Oracle的sql*plus是与oracle进行交互的客户端工具。在sql*plus中,可以运行sql*plus命令与sql语句。

我们通常所说的DML、DDL、DCL语句都是sql语句,它们执行完后,都可以保存在一个被称为sql buffer的内存区域中,并且只能保存一条最近执行的sql语句,我们可以对保存在sql buffer中的sql 语句进行修改,然后再次执行。

除了sql语句,在sql*plus中执行的其它语句我们称之为sql*plus命令。它们执行完后,不保存在sql buffer的内存区域中,它们一般用来对输出的结果进行格式化显示,以便于制作报表。

下面就介绍一下一些常用的sql*plus命令。

1.   
执行一个SQL脚本文件

SQL>start file_name

SQL>@ file_nam
4000
e

我们可以将多条sql语句保存在一个文本文件中,这样当要执行这个文件中的所有的sql语句时,用上面的任一命令即可,这类似于dos中的批处理。

2.   
对当前的输入进行编辑

SQL>edit 或 ed

3.   
重新运行上一次运行的sql语句

SQL>/ 或run

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
例:

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 Ename
      Salary

---------- ---------- ----------

10          aaa
        11

SQL> COLUMN ENAME
HEADING ’Employee|Name’

SQL>select * from emp

Employee

Department Ename    
  Salary

---------- ---------- ----------

10          aaa
        11

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

SQL>select empno,ename,job from emp;

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 EName     Salary     Commission

---------- ---------- --------- ----------

30        ALLEN      
$1,600     300
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  sql fold buffer oracle file dos