SQLPlus命令使用手册

0    292    2

Tags:

👉 本文共约6842个字,系统预计阅读时间或需26分钟。

目录

简介

Oracle的sql*plus是与oracle进行交互的客户端工具。在sql*plus中,可以运行 sql*plus命令与sql*plus语句。
我们通常所说的DML、DDL、DCL语句都是sql*plus语句,它们执行完后,都可以保存在一个被称为sql buffer的内存区域中,并且只能保存一条 近执行的sql语句,我们可以对保存在sql buffer中的sql 语句进行修改,然后再次执行,sql*plus一般都与数据库打交道。
除了sql*plus语句,在sql*plus中执行的其它语句我们称之为sql*plus命令。它们执行完后,不保存在sql buffer的内存区域中,它们一般用来对输出的结果进行格式化显示,以便于制作报表。
下面就介绍一下一些常用的sql*plus命令:

1. 执行一个SQL脚本文件

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

@与@@的区别是什么?

@等于 start 命令,用来运行一个 sql 脚本文件。
@命令调用当前目录下的,或指定全路径,或可以通过 SQLPATH 环境变量搜寻到的脚本文件。该命令使用是一般要指定要执行的文件的全路径,否则从缺省路径(可用 SQLPATH 变量指定)下读取指定的文件。
@@用在 sql 脚本文件中,用来说明用@@执行的 sql 脚本文件与@@所在的文件在同一目录下,而不用指定要执行 sql 脚本文件的全路径,也不是从 SQLPATH 环境变量指定的路径中寻找 sql 脚本文件,该命令一般用在脚本文件中。
如:在 c:\temp 目录下有文件 start.sql 和 nest_start.sql,start.sql 脚本文件的内容为:
@@nest_start.sql - - 相当于@ c:\temp\nest_start.sql 则我们在 sql*plus 中,这样执行:
SQL> @ c:\temp\start.sql

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

SQL>edit

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

SQL>/

4. 将显示的内容输出到指定文件

5. 关闭spool输出

SQL> SPOOL OFF

6.显示一个表的结构

SQL> desc table_name

7. COL命令:

主要格式化列的显示形式。 该命令有许多选项,具体如下:

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

本人提供Oracle(OCP、OCM)、MySQL(OCP)、PostgreSQL(PGCA、PGCE、PGCM)等数据库的培训和考证业务,私聊QQ646634621或微信dbaup66,谢谢!
AiDBA后续精彩内容已被站长无情隐藏,请输入验证码解锁本文!
验证码:
获取验证码: 请先关注本站微信公众号,然后回复“验证码”,获取验证码。在微信里搜索“AiDBA”或者“dbaup6”或者微信扫描右侧二维码都可以关注本站微信公众号。

标签:

Avatar photo

小麦苗

学习或考证,均可联系麦老师,请加微信db_bao或QQ646634621

您可能还喜欢...

发表回复