SQL * Loader:使用表中没有的字段

时间:2016-10-06 14:46:04

标签: oracle11g sql-loader

有一个奇怪的问题,我正在尝试使用SQL * loader将一些数据加载到Oracle中。 诀窍是,提供了一个字段,我需要将其用作用户函数的输入来计算另一个字段。原始字段我不想加载。

我试过这个:但是,FILLER字段不能作为BIND变量引用:

  LOAD DATA
     APPEND
     INTO TABLE my_table
     (
     XREF_NUM        FILLER   POSITION(8:26),
     ID_NUM                   POSITION(1:1) "my_func(:XREF_NUM)",
     ... other columns ... 
     )

表格定义只是:

  ID_NUM
  COL1
  COl2

但表中不存在XREF_NUM。

如何设置?

1 个答案:

答案 0 :(得分:2)

将其定义为BOUNDFILLER,这意味着将其视为"记住"填料。你可以在表达式中使用它。

LOAD DATA
     APPEND
     INTO TABLE my_table
     (
     XREF_NUM   BOUNDFILLER  POSITION(8:26),
     ID_NUM                  POSITION(1:1) "my_func(:XREF_NUM)",
     ... other columns ... 
     )