SQL*加载程序:使用不在 table 中的字段
SQL*Loader: Use a field not in the table
有一个奇怪的问题,我正在尝试使用 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 ...
)
Table 定义就是:
ID_NUM
COL1
COl2
但是 XREF_NUM 在 table 中不存在。
我该如何设置?
将其定义为 BOUNDFILLER,这意味着将其视为 "remembered" FILLER。您可以在表达式中使用它。
LOAD DATA
APPEND
INTO TABLE my_table
(
XREF_NUM BOUNDFILLER POSITION(8:26),
ID_NUM POSITION(1:1) "my_func(:XREF_NUM)",
... other columns ...
)
有一个奇怪的问题,我正在尝试使用 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 ...
)
Table 定义就是:
ID_NUM
COL1
COl2
但是 XREF_NUM 在 table 中不存在。
我该如何设置?
将其定义为 BOUNDFILLER,这意味着将其视为 "remembered" FILLER。您可以在表达式中使用它。
LOAD DATA
APPEND
INTO TABLE my_table
(
XREF_NUM BOUNDFILLER POSITION(8:26),
ID_NUM POSITION(1:1) "my_func(:XREF_NUM)",
... other columns ...
)