如何为Oracle导出文件加上时间戳
2024-08-29 13:50:19
供稿:网友
论坛上经常有人问,如何给导入文件加上时间戳标记.在这里把我曾经给过的两种方法总结一下. 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 可用字节