使用sqlplus工具导出数据到csv文件,要求文件带有时间戳
现业务部门有需求,需要每天定时把数据库里的一些特定数据导出来,最好能以日期命名加以区分存档。
专注于为中小企业提供网站制作、成都网站设计服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业滴道免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上千余家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
这里选用是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文件,要求文件带有时间戳
本文网址:http://hbruida.cn/article/gecheo.html