温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

使用sqlplus工具导出数据到csv文件,要求文件带有时间戳

发布时间:2020-06-04 04:12:21 来源:网络 阅读:1754 作者:青苗飞扬 栏目:关系型数据库

    现业务部门有需求,需要每天定时把数据库里的一些特定数据导出来,最好能以日期命名加以区分存档。

    这里选用是oracle的sqlplus工具。理由就是简单快捷高效,可以跨平台,linux和win都可以操作,直接借助oracle的客户端就能完成,不行sqlldr那样复杂。

    关于spool指令的参数,这里就不多叙述了,网上随便就能搜到,直接上脚本吧(我这里选的是windows平台)

 scott.sql如下:  

set colsep  ,
set feedback off  
set heading on 
set trimout on 
set pagesize 50
set linesize 80
set numwidth 10
set termout off
set trimout on
set underline off
col datestr new_value filename
select 'D:\test\scott_'||to_char(sysdate,'yyyymmdd')||'.csv' datestr from dual;
spool &filename  
select a.empno,a.ename,a.sal from emp a;  
spool off  
exit

注:

col datestr new_value filename
select 'D:\test\scott_'||to_char(sysdate,'yyyymmdd')||'.csv' datestr from dual;
spool &filename

 

其中这一部分是定义导出文件的变量,取得是数据库时间


另外准备一个连接数据库的bat脚本,select.bat:

sqlplus scott/scott@HSDB @scott.sql
pause

具体执行效果如下图,想了解更多欢迎评论交流

使用sqlplus工具导出数据到csv文件,要求文件带有时间戳






向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI