使用已终止且可选的封闭分隔符时,避免跳过空列

时间:2012-09-25 09:32:40

标签: oracle null sql-loader

我经常使用SQL Loader上传各种制表符分隔的文本数据文件。控制文件始终指定TERMINATED BY X'09'。这些数据文件中的某些“单元”可以为空,即两个后续标签之间没有字符。它总是像时钟一样工作。

现在,我遇到了一个特殊情况,我必须删除双引号的数据列,这些数据列可能包含也可能不包含实际数据(从Excel导出文本的副作用)。

我尝试在已终止的分隔符后面添加OPTIONALLY ENCLOSED BY '"',它确实适用于有问题的文件和列。但是,使用此新选项,不再能正确解码具有空值的文件。加载器似乎只是跳过这些值,这会引起列移位并导致负载损坏或负载故障。

目前,我有一个解决方法是删除新选项并执行一个SQL脚本,直接在数据库中删除双引号,但这显然无法持续。

有什么想法吗?

0 个答案:

没有答案