我有20個表是我們不斷加載和驗證數據的臨時表,我有每個表的控制文件。動態SQL加載器控制文件
我怎樣纔能有一個獨特的控制文件,只是改變數據加載到表中? 有什麼建議嗎?
在此先感謝!
---甲骨文信息---
Oracle數據庫10g企業版發佈10.2.0.1.0 - 64bi
我有20個表是我們不斷加載和驗證數據的臨時表,我有每個表的控制文件。動態SQL加載器控制文件
我怎樣纔能有一個獨特的控制文件,只是改變數據加載到表中? 有什麼建議嗎?
在此先感謝!
---甲骨文信息---
Oracle數據庫10g企業版發佈10.2.0.1.0 - 64bi
建議您編寫控制文件,將數據加載到同義詞中而不是放入特定表中。通過將同義詞重新定義到所需的表,開始每次加載運行。
你能解釋一下嗎? ?我不知道什麼是同義詞... – BRabbit27 2012-01-05 16:13:02
_synonym_是引用表(或其他Oracle DB對象)的替代名稱。您可以按如下方式創建它: '爲TEMPTAB_07創建同義詞LOAD_HERE;' 請參見[CREATE SYNONYM](http://docs.oracle.com/cd/B28359_01/server.111/b28286/statements_7001.htm#CJAJCDDF)頁面瞭解更多詳情。 – 2012-01-05 16:16:34
好吧。所以在我的應用程序加載數據之前,我重新定義了該同義詞指向我想要加載數據的表,並且voilà...是的,我認爲這是一個非常好的解決方案...我現在檢查這個... BTW有沒有一個API可以從Java調用SqlLoader?現在我使用exec()方法(在控制檯上執行一個命令)執行Java中的SqlLoader,謝謝 – BRabbit27 2012-01-05 16:21:58
是20個臨時表的名稱相同的佈局嗎? – tbone 2012-01-05 15:44:10
是的,他們有相同的佈局 – BRabbit27 2012-01-05 16:11:09
sqlldr在Linux,Windows? – tbone 2012-01-05 16:19:30