以下是我的控制文件示例:

    OPTIONS (skip=1,errors=1000,direct=true,rows=10000)
    load data
    append
    into table TABLE_NAME
    fields terminated by ','
    OPTIONALLY ENCLOSED BY '"'
    trailing nullcols(
      DATE_ID       DATE_ID_VALUE,
      DESC1         char(1000),
      DESC2         char(1000),
      DISP_URL      char(1000),
      DEST_URL      char(1000),
      ACCT_ID       ACCOUNTID_VALUE,
      Acct_num      ACCOUNT_NUM,
      created_date SYSDATE
    )

我需要从sqlldr命令传递DATE_ID_VALUE,ACCOUNTID,ACCOUNTNUM值。正在通过csv文件传递重命名列数据,而该文件又从sqlldr“DATA”参数传递。有没有一种方法可以通过sqlldr命令或其他任何方式传递其他必需的参数?

以下是我的sqlldr命令:
   sqlldr userid=abc/abcdef@abcdefgh CONTROL= cont.ctl DATA= $csvFilePath  LOG=admaster.log BAD=admaster.bad

最佳答案

我知道这很老了,但是我偶然发现了它,最近我回答了一个类似的问题。请在这里查看我的答复,以了解一种通过包装程序创建控制文件的技术。

insert timestanp of INFILE into a column from SQLLOADER

关于oracle - 可以通过sqlldr命令将变量传递到SQL * Loader控制文件吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21278726/

10-11 02:56