数据文件格式如下(有5列数据),数据文件格式不能随意改动:
data.csv
0, 1, a001, name1, a
1,  92,  aaaa, name2, b
3,  983,  dvdaa,name3, c
要倒入数据的表定义为:
id number(5), 
name varchar(50)这个表有两列,现在要把数据文件中的第二列和第四列倒入到表中,采用sql loader的方式倒入,那么control file如何写???就是如何选择数据文件中的某几列倒入到表中的控制文件如何写?那位高人能指点一二,不胜感激!!!
 

解决方案 »

  1.   

    需要用AWK文件转换出一个临时数据文件,然后做LOADER处理
      

  2.   

    1.  cat data.csv | cut -d ',' -f 2,4 > data1.csv
    2.  做成control文件
    OPTIONS(DIRECT=FALSE, ROWS=1000, ERRORS=0)
    Load data
    INFILE "data1.csv"
    APPEND
    INTO TABLE table1
    FIELDS TERMINATED BY ","
    (
    id INTEGER EXTERNAL,
    name CHAR,
    )3. sqlloader
      

  3.   

    其实很简单 就是随便命名几个不存在的字段 后面加上 filler 即可,不用担心,这些字段sqlldr不会真的去跟表里面的字段比较的,不信您试试。
    (
    id0 filler,
    id ,
    id2 filler,
    name CHAR
    )