命令行上的sqlldr流记录格式

时间:2017-05-11 16:24:35

标签: oracle sql-loader

我正在使用sqlldr加载分隔文件。我已将文件格式/表格详细信息保存在ctl文件中,并在命令行中传递其他参数。

sqlldr control=sp.ctl data=data.20170502.txt SKIP=1 userid=xyz@db/pwd log=sp.log bad=sp.bad

sp.ctl

LOAD DATA

TRUNCATE
INTO TABLE "T_DATA"
TRUNCATE
FIELDS TERMINATED BY '|'
TRAILING NULLCOLS 
(
C_1 CHAR(2000),
C_2 CHAR(2000),
C_3 CHAR(2000)
)

我现在需要在此数据文件上使用流记录格式。

infile 'example3.dat'  "str '|\n'"

但是,我没有使用 infile 语法。

所以我尝试使用

sqlldr control=sp.ctl data=data.20170502.txt "str '!\n'" SKIP=1
userid=xyz@db/pwd log=sp.log bad=sp.bad

它出错了:

  

LRM-00112:参数'data'不允许多个值

如何在命令行上传递记录分隔符?

0 个答案:

没有答案