Oracle基本练习:SQL*Plus运行环境、使用SQL*Plus命令、编辑SQL*Plus命令

SQL*Plus运行环境
1.显示设置信息命令
显示当前登陆数据库用户的名字
show user
显示SQL*Plus的所有设置信息
show all
如果要显示某个具体的设置信息,可以在show命令之后跟上相关的关键字
显示控制是否统计每个SQL命令的运行时间的参数Timing的状态
show timing

如果要显示数据库服务器的参数设置信息,可以使用show parameter命令。并在命令之后指定要显示的参数名称。(需要权限)

显示当前数据库的名称
show parameter db_name
显示所有包含字符串"db_block"的参数设置信息
show parameter db_block
2. 设置或修改设置信息命令set

格式:

set system_option value
设置每页打印的行数为30set pagesize 30

注意:通过set命令设置的环境变量是临时的,当用户退出SQL*Plus后,用户设置信息全部丢失。

设置每行中能够显示的字符的总数为120个(默认为80个)
set linesize 120

注意:如果经常要修改这些设置信息,通常做法是编写一个脚本文件,在脚本文件中指定这些设置信息,然后在SQL*Plus中执行脚本文件。

使用SQL*Plus命令

SQL*Plus命令用于设置查询结果的输出格式,形成复杂的报表,编辑SQL命令,设置系统变量并可提供帮助信息。

注意:SQL*Plus命令不存在缓冲区中,不以分号结束。

1.Help命令

格式:

help [topic]
查看命令的使用方法,topic表示需要查看的命令名称。
2.HOST命令

使用该命令可以从SQL*Plus环境切换到操作系统环境

格式

HOST
HOST vi   //LINUX环境
HOST notepad.exe  //Windows环境
3.clear screen

清屏操作

4. show
show all
查看SQL*Plus 的所有系统变量值信息
5. Describe

返回数据库中所存储的对象的描述。对于表、视图等对象而言,Desc命令都可以列出其各个列的名称以及各个列的属性。

格式:

Describe object_name
显示表emp的结构信息
desc emp
编辑SQL*Plus命令

SQL*Plus提供了一个命令缓冲区,用来保存最近执行的一条SQL语句,或者是一个PL/SQL块。

用户可以反复执行缓冲区的内容,也可以编辑其内容。

常用编辑命令:

Append text  
change /old/new
change /text
clear buffer
del
input
input text
list
list n							显示一行
list *							//显示当前行
list last						//显示最后一行
list m n                        //显示多行从m 到n
1.执行缓冲区内容
命令:
/ 						//执行缓冲区中刚刚输入的或者已经执行的内容
run

练习:1

创建一个表,名为t2
create table t2(id number)
使用/命令再次执行创建表t2的命令
SQL>/
create table t2(id number)

run命令与/一样,却别在于执行前先显示缓冲区中的内容

2.编辑缓冲区内容

缓冲区真正意义在于用户可以编辑其中的内容,这样如果语句执行出错,用户可以很方便地进行修改。尤其是那些特别长,复杂的SQL语句。格式如下:

edit 	[file_name]		//打开默认的编辑器
ed

file_name默认为afiedt.buf,也可以指定一个其他文件。比如:a.sql、b.sql

练习2:

执行Sql语句
select eename from emp;
使用edit命令将缓冲区内容写入默认
edit

在Linux操作系统下,edit命令和Windows有区别,可以使用另外一种方式编辑缓冲区内容

save file_name
vi file_name
get filename

练习3:

select eename from emp;
save a.sql
host vi a.sql
//修改成:select * from scott.emp;
//保存退出
get a.sql

3.显示缓冲区内容

格式:

list
l n
4. 追加缓冲区内容

格式:

append	文本		//在缓冲区当前行的末尾追加文本
input	文本		//在当前行的末尾追加一行或多行文本
change /旧字符串/新字符串
5.清除缓冲区内容
del					//清除当前行
del 开始行号  结束行号	//删除开始行号和当前行号之间的行
del 开始行号 *			//删除开始行号和当前行号之间的行
del * 结束行号			//删除当前行号和结束行号之间的行
del last				//删除最后一行
6. 对操作系统文件读写

​ 1.读文件命令

@				//将指定的文本文件的内容读到内存,允许多条SQL命令,每条以分号结束
	@ 文件名
	@ http://web服务器/文件名
	sqlplus 用户名/口令 @ 文件名
get				//与@相似,只是把文件加载到缓冲区,并不直接执行,只能包含一条SQL语句,不能一分号结束
	get 文件名 选项[list/nolist]
start			//与@等价

	2. 写文件
save				//将当前缓冲区内容写入一个操作系统文件
	save 文件名 选项[create/append/repleace]
spool				//将命令执行结果输出到一个操作系统文件
	spool
	spool 文件名
	spool off
	spool out

注意:如果以执行了spool命令,那么从执行spool命令并打开文件开始,此后所有的输出,包括错误信息,用户的键盘输入,都将写入指定文件,直到遇到spool off或者spool out。

spool命令通常的用法是做报表。首先精心设计报表的页面格式,将其SQL语句存放在一个文件中,在产生输出的语句前后加上spool命令,然后将这个文件读入缓冲区中执行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值