暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

如何为Oracle导出文件加上时间戳

原创 eygle 2006-04-24
752

论坛上经常有人,如何给导入文件加上时间戳标记.在这里把我曾经给过的两种方法总结一下.


1.可以在DOS下从系统获得时间戳


利用Dos命令取得时间戳:









C:\\>echo %date%
2006-04-24 星期一


C:\\>echo %date:~0,10%
2006-04-24



接下来使用导出(exp)工具引用该时间戳就很容易了: 








exp userid=eygle/eygle file=d:\\eygle%date:~0,10%.dmp log=d:\\eygle%date:~0,10%.log

2.使用sql脚本从数据库获得时间戳


有朋友反应在NT下该命令执行结果与Windows2000和WindowsXp上不同,没有NT的环境可以试验(据网友说用""把date引用起来就可以了,如: "%date%",我没有测试过).


我们也可以使用如下的SQL方式获得时间戳.


首先编写一个doexp.sql脚本:








column today new_val dt
select to_char( sysdate, 'ddmmyyyy' ) today from dual;
host exp userid=eygle/eygle tables=emp file=exp_prod_&dt..exp log=exp_prod_&dt..log
exit

再编写一个start.bat批处理脚本调用doexp.sql脚本:








echo off
set oracle_sid=eygle
sqlplus eygle/eygle @doexp

执行结果如下:









E:\\Itpub\\ItpubTrain\\Exp2>dir
 驱动器 E 中的卷是 SWAPDK
 卷的序列号是 F8BA-FCAC


 E:\\Itpub\\ItpubTrain\\Exp2 的目录


2003-10-07  15:14    <DIR>          .
2003-10-07  15:14    <DIR>          ..
2003-08-26  15:18               170 doexp.sql
2003-10-07  15:12             4,096 exp_prod_07102003.exp
2003-10-07  15:12               335 exp_prod_07102003.log
2003-08-26  15:18             4,096 exp_prod_26082003.exp
2003-08-26  15:18               312 exp_prod_26082003.log
2003-10-07  15:42             4,096 exp_prod_30082003.exp
2003-08-30  17:09               335 exp_prod_30082003.log
2003-10-07  15:14             1,660 sqlnet.log
2003-10-07  15:12                60 start.bat
               9 个文件         15,160 字节
               2 个目录    674,652,160 可用字节



如果大家有什么好的方法,欢迎交流.


 

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论