作者:
eygle |
English Version【
版權聲明:轉載時請務必以超鏈接形式標明文章
原始出處和作者信息及
本聲明】
鏈接:
http://www.eygle.com/archives/2006/04/eciioracleoiaoe.html論壇上經常有人問,如何給導入文件加上時間戳標記.在這里把我曾經給過的兩種方法總結一下.
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 可用字節
|
如果大家有什么好的方法,歡迎交流.
?
posted on 2007-08-16 20:44
壞男孩 閱讀(1411)
評論(0) 編輯 收藏 所屬分類:
ORACLE篇章