oracle数据库基础:sqlplus与spool命令

sqlplus命令

使用sqlplus登录之后,可以使用**buff(缓存)**来存储/执行/修改上一条运行的sql语句 。

  1. buff中只能存储一条sql语句,但是这条sql语句可能有很多行
  2. 每次放入新的sql语句,会把之前的覆盖掉
  3. 每次执行sql语句,都会把这个sql语句放到buff里面

sqlplus相关的命令:
l 查看缓存中的sql语句
a 在[定位]的那一行后面追加新的内容
i 在[定位]的那一行下面插入新的一行
c 替换[定位]的那一行中的某些字符串 ,格式为:c/老的字符串/新的字符串
del 删除[定位]的那一行内容n 后面加内容可以重写这一行
**$ ** 后面跟一个终端命令,例如$cls清屏,linux中使用!
/ 执行缓存sql命令

使用 l 命令查看buff中的sql后,可以直接输入行数,然后回车,这就是定位到了这一行

具体使用:
例如:我们要查所有员工的id,last_name,first_name

 select id,first_name,last_name 
 from s_emp
 where id<=10;

此时,buff中存的sql语句就是上面这句
输入“/”会执行buff中的sql语句,如图:
在这里插入图片描述
输入"l"查看buff中的sql语句,如图:
在这里插入图片描述
使用l查看buff中的sql语句后,可以直接输入行数,回车,表示定位到了输入的行数这一行,然后可以进行追加(a),插入(“i”),删除(del),重写(n),替换(c)等命令
如:删除
在这里插入图片描述

注意缓存中似乎没有分号,所以在删除后不需要在删除行前一行添加分号

如果要清空buff中的语句

clear buffer

spool命令

可以记录操作的过程
如下:先后输入下面几个sql语句

spool test.sql //将接下来的sql语句以及sql的运行结果保存到文件中

select id,first_name from s_emp;
select id,last_name from s_emp;

spool off; //关闭spool功能

保存的文件同样在电脑用户目录下
后缀改为了.LST,如下
在这里插入图片描述

其他一些命令

save test.sql //buff中的sql语句保存在test.sql文件中
get   test.sql //把test.sql中的内容在加载到buff中,但是没有运行
start test.sql //把test.sql中的内容在加载到buff中并且执行
@test.sql       //把test.sql中的内容在加载到buff中并且执行
edit file_name //使用系统默认编辑器去编辑文件

使用:

例如:将buff中的sql语句保存到test.sql文件中

save test.sql;

在这里插入图片描述
保存的文件在哪?在你电脑的用户文件下,如我的:

在这里插入图片描述
在这里插入图片描述

例如:把test.sql中的内容在加载到buff中并且执行

start test.sql;
//或者
@test.sql;
//都是一样的

例如:保存了test.sql后可以用系统编辑器进行编辑

//指明编辑的文件
edit test.sql;
//不指明编辑文件名时,表示编辑上次最新保存的sql文件
edit;

在这里插入图片描述

注意语句最后是没有分号的,但有一个/,表示语句结束
打开系统编辑器后就不能在命令端编辑了,需要先把系统编辑器关闭才能继续使用命令端

机智的人立马就想到了在命令端的长句的sql语句写错时该怎么改了,哈哈哈

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值