【发布时间】:2015-03-26 16:33:14
【问题描述】:
我正在使用控制文件将数据加载到在 Windows 7 机器上运行的 Oracle 11g 中。我在使用以下 case 语句加载数据时遇到问题,我尝试了不同的方法,但未能成功。有什么建议吗? (在日志文件中的错误是:
记录 1:拒绝 - 表员工错误,列 blah。 ORA-00905: 缺少关键字
记录 2:拒绝 - 表员工错误,列 blah。 ORA-00905: 缺少关键字,.....等等。
代码是:
Options (skip=1)
load data
APPEND INTO TABLE employee
fields terminated by "\t"
TRAILING NULLCOLS
(
a,
b,
c,
d,
blah "CASE WHEN :b='k' THEN 'LPAD(:blah,6,'0')'
WHEN :b='s' AND :d='p' THEN 'LPAD(:blah,11,'0')'
WHEN :b='s' AND :d='pr' THEN 'LPAD(:blah,8,'0')'
END",
g,
h,
i
)
【问题讨论】:
标签: oracle11g etl sql-loader case-statement