oracle sql记录,oracle实验记录 (SQL*PLUS 命令操作)

SQL> help index

Enter Help [topic] for help.

@             COPY         PAUSE                    SHUTDOWN

@@            DEFINE       PRINT                    SPOOL

/             DEL          PROMPT                   SQLPLUS

ACCEPT        DESCRIBE     QUIT                     START

APPEND        DISCONNECT   RECOVER                  STARTUP

ARCHIVE LOG   EDIT         REMARK                   STORE

ATTRIBUTE     EXECUTE      REPFOOTER                TIMING

BREAK         EXIT         REPHEADER                TTITLE

BTITLE        GET          RESERVED WORDS (SQL)     UNDEFINE

CHANGE        HELP         RESERVED WORDS (PL/SQL)  VARIABLE

CLEAR         HOST         RUN                      WHENEVER OSERROR

COLUMN        INPUT        SAVE                     WHENEVER SQLERROR

COMPUTE       LIST         SET

CONNECT       PASSWORD     SHOW

查看所有命令

SQL> ? Change~~~~~~~~~~~~~查看具体使用

CHANGE

------

Changes the first occurrence of the specified text on the current

line of the SQL buffer. The buffer has no command history list and

does not record SQL*Plus commands.

C[HANGE] sepchar old [sepchar [new[sepchar]]]

Not available in iSQL*Plus

常用的

SQL> select

2  *

3

~~不支持空格

SQL> set sqlblanklines on~~~~~~~~~~~~~~用这个支持了

SQL> select

2  *

3

4

5  from test;

A

----------

1

LIST:查看已写命令 可以简写成L

SQL> l

1  select

2  *

3

4

5* from test

change :修改

SQL> select * fro test;

select * fro test

*

ERROR at line 1:

ORA-00923: FROM keyword not found where expected

SQL> l

1* select * fro test

SQL> c/fro/from

1* select * from test

SQL> l

1* select * from test

SQL> /

A

----------

1

del:删除

SQL> l

1* select * from test

SQL> del

SQL> l

SP2-0223: No lines in SQL buffer.

SQL> set sqlblanklines on

SQL> select

2  *

3

4  from test;

A

----------

1

SQL> ;

1  select

2  *

3

4* from test

SQL> del 3~~~~~~~~~~~~~~~~~~~~删除第几行

SQL> l

1  select

2  *

3* from test

SQL> /

A

----------

1

APPEND 追加

SQL> select * from tes;

select * from tes

*

ERROR at line 1:

ORA-00942: table or view does not exist

SQL> l

1* select * from tes

SQL> append t

1* select * from test

SQL> l

1* select * from test

SQL> /

A

----------

1

SAVE:保存buffer               geT:显示不执行

edit:编辑

col对列修改

SQL> ? col

COLUMN

------

Specifies display attributes for a given column, such as:

- text for the column heading

- alignment for the column heading

- format for NUMBER data

- wrapping of column data

Also lists the current display attributes for a single column

or all columns.

COL[UMN] [{column | expr} [option ...] ]

where option represents one of the following clauses:

ALI[AS] alias

CLE[AR]

ENTMAP {ON|OFF}

FOLD_A[FTER]

FOLD_B[EFORE]

FOR[MAT] format

HEA[DING] text

JUS[TIFY] {L[EFT] | C[ENTER] | 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]

SQL> col  a heading "b"

SQL> select * from test;

b

----------

1

SQL> col a format a5 heading "c"

SQL> select * from test;

c

----------

##########

报表的一些命令

SQL> select * from book;

ID BOOKNAME   PUB

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

1 a          a

2 b          b

3 c          c

4 c          c

SQL> break on pub(该列重复的只显示1条)分类

SQL> select * from book;

ID BOOKNAME   PUB

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

1 a          a

2 b          b

3 c          c

4 c

compute count of bookname on pub 计算bookname数 按pub分类

SQL> compute count of bookname on pub

SQL> select * from book;

ID BOOKNAME   PUB

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

1 a          a

---------- **********

1 count

2 b          b

---------- **********

1 count

3 c          c

4 c

---------- **********

2 count

*********

SQL> passw xh~~~~~~~~~~~~~~~~~~SQLPLUS中改user密码

Changing password for xh

New password:

Retype new password:

Password changed

SQL>

SQL> passw zz

Changing password for zz

New password:

Retype new password:

Password changed

SQL> show user

USER is "XH"~~~~~~~~~~~改自己的

SQL> passw

Changing password for XH

Old password:

~~~~~~~~~~~~~~~~~~

SQL> define a=1~~~~~~~~~定义变量

SQL> select * from t1 where a=&a;

old   1: select * from t1 where a=&a

new   1: select * from t1 where a=1

no rows selected

SQL> define a

DEFINE A               = "1" (CHAR)~查看定义的

SQL>

SQL> accept b prompt 'input'~~~~定义变量提示输入变量value,另外还可以有format 和hide隐藏输出

input2~~~~~~~~~~~~属于变量value

SQL>

SQL> select * from t1 where a=&b;

old   1: select * from t1 where a=&b

new   1: select * from t1 where a=2

no rows selected

SQL> define b

DEFINE B               = "2" (CHAR)

SQL> undefine b~~~~~~~~~~~~~~~~~~~~~~~~~~清除变量

SQL> define b

SP2-0135: symbol b is UNDEFINED

~~~~~~~~~~~~~~~~

prompt ,pause

脚本里用

prompt '这是TEST,按回车'

pause

select count(*) from t1 ;         script中内容

SQL> @d:\1.txt

'这是TEST,按按回车'

COUNT(*)

----------

15

****************

variable 绑定变量

SQL> variable test number;~~~~定义

SQL> exec :test:=2;~~~~~~~~赋值

PL/SQL procedure successfully completed.

SQL> select * from t1 where a=:test;~使用

no rows selected

SQL> print test~~~~~~~~~~输出变量结果

TEST

----------

2

********************

set arraysize N 指定数目提取尺寸 DEFALUT 15,这个跟优化有关系,后面关于优化实验中单独介绍

SQL> set autocommit on;~~~~~~~~自动提交

SQL> update t1 set a=2;

15 rows updated.

Commit complete.

SQL> set autocommit off;

SQL> set colsep |~~~~~~~~~~设置分隔符号default 空格

SQL> select object_name,object_id from user_objects where rownum<2;

OBJECT_NAME

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

OBJECT_ID

----------

TEST_SQ

53795

SQL> col object_name format a20

SQL> select object_name,object_id from user_objects where rownum<2;

OBJECT_NAME         | OBJECT_ID

--------------------|----------

TEST_SQ             |     53795

SQL> set heading off~~~~~~~~不显示标题 列名 default on

SQL> select object_name,object_id from user_objects where rownum<2;

TEST_SQ             |     53795

set linesize行长  default 80

pagsize每页显示的行数 default 14

SQL> select * from t1;

A

----------

1

2

3

4

5

6

7

8

9

10

11

A

----------

12

13

14

15

16

17

18

19

20

20 rows selected.

SQL> select * from t1;

A~~~~~~~~~~~~

----------~~~~~~~~~~~~~~~~

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

A

----------~~~~~~~~~~~~~~这都算1行

18

19

20

SQL> set pagesize 23

SQL> select * from t1;

A

----------

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

20 rows selected.

20 rows selected.

SQL>

**********serveroutput

针对dbms_output的 default off 不输出

1  declare

2  begin

3  dbms_output.put_line('test');

4* end;

SQL> /

PL/SQL procedure successfully completed.

SQL> set serveroutput on

SQL> /

test***************************

PL/SQL procedure successfully completed.

*********

termout 控制script. 输出default on ,off只运行不输出

SQL> set termout off

SQL> @d:\1.txt;

SQL>

SQL> set termout on

SQL> @d:\1.txt;

'这是TEST,按按回车'

COUNT(*)

----------

20

SQL>

**************

SQL> set time on~显示时间系统时间

15:25:41 SQL>

15:25:41 SQL> set time off

SQL>

SQL> set timing on~~~~~~~~~~~~~~~显示SQL语句运行时间

SQL> select count(*) from t1;

COUNT(*)

----------

20

Elapsed: 00:00:00.00

SQL> set define ~~~~~~改变量定义字符

SQL> define a=1

SQL> select count(*) from t1 where ;

old   1: select count(*) from t1 where

new   1: select count(*) from t1 where a=1

COUNT(*)

----------

1

SQL> select count(*) from t1 where a=&a;

SP2-0552: Bind variable "A" not declared.

SQL> set verify off~~~~~~~~~~~~~~不显示old,new行 (不显示验证消息)

SQL> define a=1

SQL> select count(*) from t1 where ;

COUNT(*)

----------

1

SQL> set verify on~~~~~~~~~~~~~~~~~~~~~

SQL> select count(*) from t1 where ;

old   1: select count(*) from t1 where

new   1: select count(*) from t1 where a=1

COUNT(*)

----------

1

****************

clear colunm_name clear 清除对列设置

clear buffer 清除buffer

clear compute清除报表

spool d: 位置     append追加,replace覆盖,create新建

spool off

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值