配置文件:
LOAD DATA
INFILE *
INTO TABLE DEPT
REPLACE
FIELDS TERMINATED BY ‘,’ OPTIONALLY ENCLOSED BY ‘”‘
( DEPTNO,
FILLER_1 FILLER, //see it filler
DNAME,
LOC
)
BEGINDATA
20,Something Not To Be Loaded,Accounting,”Virginia,USA”当装载数据时候 需要在输入记录中跳过各种不同的列是非常有用的
例如你想 装入 1.3.5列 跳过2.4列 可以利用filler
它可以让我们在数据流里面指定一个列 不把他放到数据库中。我疑惑的是FILLER_1 FILLER 这里的FILLER_1 是哪来的,看了三思的涂抹oracle里也有个  TCOL FILLER,这TCOL和FILLER_1都是自己随便写的吗?

解决方案 »

  1.   

    这TCOL和FILLER_1可以随意指定,只要符合标识符命名规则就行了
      

  2.   

    .........看看 http://blog.csdn.net/xdy3008 找。
      

  3.   

    导入文件:
    1. 在某路径下写控制文件 e:\testRegionControl.ctl :
     load data
     infile  e:\region.txt
     truncate into table region
     fields terminated by X'09'
     TRAILING NULLCOLS
     (
     PPCC_ID      :PPCC_ID),
     PPCC_PRINT_CODE    :PPCC_PRINT_CODE,
     PPCC_STATUS     :PPCC_STATUS,
     PPCC_STATUS     :PPCC_STATUS,
     filler1      FILLER,
     PPCC_MPDC_CREATE_DATE   to_date('" + PPCC_MPDC_CREATE_DATE + "','YYYY-MM-DD'),
     PPCC_MPDC_UPDATE_POINT_FLAG  constant '1',
     PPCC_MPDC_AMT      to_number(trim(:PPCC_MPDC_AMT))
     ) 
    这是你博客上的帖子,不知道是不是你自己写的?
     filler1      FILLER, 里的filler1是可以随便写吗?
      

  4.   

    如果可以随便写,为什么要有这个东西,直接略掉 ,只写个filler 不得了吗
      

  5.   

    这个是sqlldr的语法,直接怎么写呢,如果区分字段名与filler关键字,另外,取一个列名的作用是,可以在函数中引用该字段