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

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

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   

2003-10-07  15:14   

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 可用字节

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值