oracle怎么设置sql每隔一段时间执行一次_Oracle大规模数据快速导出文本文件
哈喽,前几久,和大家分享过如何把文本数据快速导入数据库(点击即可打开),今天再和大家分享一个小技能,将Oracle数据库中的数据按照指定分割符、指定字段导出至文本文件。
首先来张图,看看导出的数据是什么样子。
用到的就是Oracle的spool命令,可以将数据库数据导出一个文本文件,而且也可以指定数据分隔符,其中!^是数据之间的分隔符。
首先和大家分享一下,我的这个脚本是怎么写的,其中写select时,需要导出那些字段,直接写在select里面就可以了,此外,我也是在select里面指定了分割符!^。虽然可以用参数来指定分隔符,但用起来并不友好,结束时,我会演示的。
set echo offset heading offset feedback offset termout onset trimspool offspool /home/oracle/Desktop/studentinfoSpool.dat --指定导出数据保存的文本文件select stuid||'!^'||stuname||'!^'||sex||'!^'||age from studentinfo; spool offexit
一个不超过10行的SQL脚本,设置四五个参数,一个select语句,就可以搞定导数这个问题,是不是,很简单。
接下来对几个常用的参数进行解释一下。
参数 | 作用 |
---|---|
set echo off | 显示start启动脚本中的每个sql命令,默认为on。比如select语句 |
set pagesize 0 | 设置每页的行数,默认为24,设置为0时为不用分页,一般需要分页 |
set termout off | 在电脑屏幕显示脚本中的命令执行结果,默认为on。 |
set feedback off | 显示本次sql命令处理的记录数,默认为on。 |
set heading off | 输出域标题,默认为on |
set trimspool off | 去字段空格 |
set linesize 50 | 每行允许的最大字符数,设置大些,如果太小,数据库会报错或者数据自动换行,但如果设置过大,文件也会变大 |
set colsep ‘!^’; | 用来设置分割符,但不建议使用是参数,建议 手动写分割符 |
执行sql脚本
sqlplus c##orcl/1234 @/home/oracle/Desktop/studentinfoSpool.sql
说明:c##orcl是用户名,1234是密码,@后面是我们写的sql脚本,里面就是刚刚演示的SQL脚本。因为是本地数据库,所以没有写地址和端口等。
spool命令就是这么简单,但也有几个需要注意的地方。
注意事项:
1、不建议使用colsep 设置分割符。
可以把手动设置分隔符和使用colsep设置的结果对比一下。
可以看到,使用colsep 设置分隔符的数据中间会出现很多空格,而手动设置的分隔符就很好。此外,如果最后一个字段后面也需要分割符,colsep 参数就无能为力。
2、合理设置linesize
linesize 设置如果不当,会出现很多问题,如果太小,数据库可能会错,数据自动换行。太大的话,数据文件也会更大。
有没有get到这个小技巧?get到的话一定要点一个“再看”!!!
☞ 推荐阅读 ☜
1、文本数据可以这样导入数据库
2、凯利公式助你获得更多收益
3、苹果最近的股价有点......
4、crontab定时任务了解一下
5、此av非彼"AV"
“跟着菜鸟一起学R语言”转身变成“数据志”,不知道的也点一个“再看”呗!
oracle怎么设置sql每隔一段时间执行一次_Oracle大规模数据快速导出文本文件相关推荐
- Oracle大规模数据快速导出文本文件
哈喽,前几久,和大家分享过如何把文本数据快速导入数据库(点击即可打开),今天再和大家分享一个小技能,将Oracle数据库中的数据按照指定分割符.指定字段导出至文本文件. 首先来张图,看看导出的数据是什 ...
- 总结以下三种方法,实现c#每隔一段时间执行代码:
总结以下三种方法,实现c#每隔一段时间执行代码: 方法一:调用线程执行方法,在方法中实现死循环,每个循环Sleep设定时间: 方法二:使用System.Timers.Timer类: 方法三:使用Sys ...
- java每隔一段时间执行_8.Android中,每隔一段时间执行某一个任务(Timer)
1,在开发中我们有时会有这样的需求,即在固定的每隔一段时间执行某一个任务.比如UI上的控件需要随着时间改变,我们可以使用Java为我们提供的计时器的工具类,即Timer和 TimerTask. Tim ...
- 防抖与节流(鼠标移入事件每隔一段时间执行)
废话不多说,直接怼代码 <template><div><button @click="show = !show">Toggle render&l ...
- JS每隔一段时间执行一个方法
function funcTest(){ //每隔3秒执行一次timelyFun方法 window.setInterval("timelyFun()",3000); } windo ...
- js每隔一段时间执行方法
方法一:每隔10秒执行一次 1 2 3 4 5 6 7 8 //申明一个全局变量存放间隔函数 var setIntervalFun = null; //每隔10秒钟执行一次setXSJYLTime() ...
- 每隔一段时间执行php_用php脚本,你如何定时更新商品列表
电商项目中为了提高抗并发能力,需要对商品列表做缓存,以下是更新缓存用的脚本: //PRODUCTION_为缓存商品列表的临时key //PRODUCTION为缓存商品列表key $con = mysq ...
- NodeJS脚本中for循环中加入setTimeout实现每隔一段时间执行操作
在nodejs中打算实现每隔5s就console一下信息,总共打印10次,于是想到了for循环加setTimeout来实现,可是写出来发现10次在五秒后全部打印出来了,于是开始想办法解决,直接上解决办 ...
- 每隔一段时间执行shell命令
需求:每10秒钟打印一句话:"i am a superman". while true do echo "i am a superman" sleep 10 d ...
最新文章
- cms是什么意思啊_GC 知识点补充——CMS
- 高德地图-轨迹回放(二)
- Office文档模型深入---Outlook文档模型与开发实战(1)
- python调用adb shell命令_Python之使用adb shell命令启动应用的方法详解
- java if else重构_java – 如何重构这个有多个if / else语句的方法
- Android模糊查询excel文件内容,【excel】模糊查询关键字
- 皮卡堂 game.php,《皮卡堂》官方网站 | 过家家,玩生活!年度最可爱社区游戏,女生最爱玩!...
- Android点击图片随机,android 设置图片随机出现-两种方式
- 【人生】比未知更可怕的是预知---献给那些毕业季的童鞋
- BZOJ4570: [Scoi2016]妖怪
- 【BZOJ】3576: [Hnoi2014]江南乐
- C++对象模型——指向Data Members的指针(Pointer to Data Members)
- project安装包_Microsoft project 2019软件功能介绍(附安装包)
- 线性表的定义和基本操作
- killer queen ctf
- goldendict词典安装配置
- java代码比较数据_比对两个数据库的差异:Java篇
- ubuntu20.04关闭内核自动更新
- Android经典项目案例开发实战宝典
- brew对redis的使用