我有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