如何用sqlplus执行一个sql文件和批量执行sql文件

1.sqlplus执行单个SQL文件

举个例子,假设你的sql文件是test.sql ,保存路径是D:\script,那么在sqlplus里执行它,用如下语法:
sqlplus> @D:\script\test.sql
这是windows环境下的方法,linux类似,简单来说,就是“@” 加上完整文件名(绝对路径+文件名+文件扩展名) --------------------- 本文来自 mkl34367803 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/u010523770/article/details/79013962?utm_source=copy

 

2.sqlplus批量执行sql文件

假如我们有很多sql脚本,如果一个一个sql脚本文件执行显然过于麻烦,下边我们演示sql脚本批量执行。

解决方法:将需要执行的sql脚本文件的@绝对路径 存放到一个脚本文件中,然后执行这个脚本文件就可以了

具体演示:
1.新建step.sql脚本,内容如下

@D:\Users\caojx\Desktop\testsql\test1.sql;
@D:\Users\caojx\Desktop\testsql\test2.sql;

2.sqlplus中执行

SQL> @D:\Users\caojx\Desktop\testsql\step.sql;

----本文来自 大海深处的星星 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/u013991521/article/details/79293543?utm_source=copy

 

用sqlplus的spool导文本文件

2017年02月07日 17:09:43 波特王子 阅读数:3217更多

个人分类: 数据库开发Oracle相关

  1. sqlplus user/pwd@database << END
  2. set echo off; --命令不回显 
  3. set feedback off; --不显示已选择行数
  4. set colsep |; --设置列分割符
  5. set linesize 2500; --设置每行最大长度(补空格的) 
  6. set pagesize 0; --设置不分页
  7. set heading off; --不显示列名
  8. set term off; --不显示脚本内容
  9. set trimspool on; --去掉行末的空格,针对spool的文件内容
  10. set trimout on; --去掉行末的空格,针对屏幕输出
  11. set numformat 99999999990.99; --设置数字格式,保留两位位小数,小于0时小数点前补零(0.22)
  12. set sqlnumber off; --sql换行后显示提示符(而不是行号)
  13. spool tmpfilename.txt
  14. sqlstatement;
  15. spool off
  16. END
  17. #去出多余内容
  18. sed -e 's/ //g' -e '/^SQL>/d' tmpfilename .txt > newfilename.txt

 

补充:

set numformat 99999999999.999   --保留三位小数,小于零时小数点前不补零(.222)

用colsep ,导出的字段会按字段长度自动补空格

 

 如果sql语句中用到了连接符“||”,则对输出的格式设置无效 (set numformat )

参考:

http://www.diybl.com/course/7_databases/oracle/oraclejs/20110223/553944.html 

sqlplus user guid:

http://docs.oracle.com/cd/B10501_01/server.920/a90842/toc.htm

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值