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

来源:互联网 发布:ansible支持windows吗 编辑:程序博客网 时间:2024/05/18 01:01

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


Oracle导出文件加上时间戳的两种方法总结一下.  

1.可以在DOS下从系统获得时间戳
  利用Dos命令取得时间戳:
  C:\>echo %date%   
  2012-10-17 星期三
  C:\>echo %date:~0,10%   
  2012-10-17
 
  接下来使用导出(exp)工具引用该时间戳就很容易了:
  exp userid=orcldba/orcldba file=d:\orcldb%date:~0,10%.dmp log=d:\orcldb%date:~0,10%.log 
   注:此种方法与Windows的版本有关系,中文版和英文版的日期格式不同。

2.使用sql脚本从数据库获得时间戳
  在Windows NT下该命令执行结果可能与Windows2000和WindowsXp上不同。   
  我们也可以使用如下的SQL方式获得时间戳.   
  首先编写一个doexp.sql脚本:

  column today new_val dt  

  select to_char( sysdate, 'yyyymmddHH24Miss' ) today from dual; 
    --其中yyyymmddHH24Miss具体到年月日时分秒
  
  host exp userid=orcldba/orcldba tables=emp file=exp_prod_&dt..exp log=exp_prod_&dt..log
    --其中orcldba/orcldba为数据库的用户名和密码 如果导出全部表,可不加tables=emp参数
  
  exit

  
  再编写一个start.bat批处理脚本调用doexp.sql脚本: 
  
  echo off 
  
  set oracle_sid=orcl  
    --其中orcl为数据库名称

  sqlplus orcldba/orcldba @doexp 
   --其中orcldba/orcldba为数据库的用户名和密码

  注:使用sql脚本的方法比较方便