SQL * Loader是否具有允许自定义日志文件的任何功能?

时间:2016-03-11 17:48:53

标签: oracle sql-loader

我被要求创建一个系统,允许第三方公司将数据转储到我们的几个表中。这些第三方定期提供csv文件,经过一些研究后,似乎Oracle自己有一个标准的工具,“sqlldr”。我已经让它达到了可接受的程度,并且我们有一份工作计划每天运行一次该脚本。

但其中一个第三方提供了非常脏的数据,我不能指望它总是加载每一行/记录(看起来高达8%左右会失败)。我的老板让我把前几个测试中的“所有输出”转发给他,就像一个白痴我也发送了日志文件。

他已经要求修改此“报告”以包含那些不是唯一约束的异常以及导致异常的输入文件中的行。

这意味着我需要来自日志文件的数据,但也需要来自单个文档中的(我相信)拒绝文件。而不是编写一个复杂的shell脚本来组合这两个,SQL * Loader本身是否允许任何可能实现相同的定制?我已经阅读了Oracle文档并且没有找到任何暗示这一点的内容,但我也学会了不要完全信任它。

这可能吗?理想情况下,该解决方案允许我向拒绝文件中添加原始输入文件中不存在的值,但我也对日志文件或拒绝文件的任何自定义感兴趣。

1 个答案:

答案 0 :(得分:1)

没有

我打算停在那里,但您可以定义日志文件的名称,这可能有助于解决问题。 SQL * Loader的大多数自动化涉及将其包装在shell脚本中;又名"滚动你自己。"

相关问题