论坛上经常有人问,如何给导入文件加上时间戳标记.在这里把我曾经给过的两种方法总结一下.
1.可以在DOS下从系统获得时间戳
利用Dos命令取得时间戳:
C:/>echo %date% C:/>echo %date:~0,10% |
接下来使用导出(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:/Itpub/ItpubTrain/Exp2 的目录 2003-10-07 15:14 <DIR> . |
如果大家有什么好的方法,欢迎交流.