可以写个批处理文件把多个文件合并成一个文本文件,在调用SQLLDR. 或控制文件
中INFILE多个文件。

解决方案 »

  1.   

    我一般都是将SQLldr的命令写在批处理文件里面.
    然后如果不同格式的文件,写不同的控制文件就可以的了.
    进攻参考
      

  2.   

    load data
                infile 'f:\test1.csv'
                infile 'f:\test2.csv'
                append into table hw3ms.t_res_prod_line
                fields terminated by ','
                (PROD_LINE_ID,PROD_LINE_NO,PROD_LINE_NAME,PROD_LINE_STATUS)
      

  3.   

    呵呵,终于找到了自己那里的问题所在,可以给你参考一下:把多个文本合并到一个文本中,前面用一个标志位加以区别,如:
     1 1102 3202 0 马大哈  0                    
     1 1102 3214 0 test  0                      
    12 1002 11 42112 12 4 大虾 1 9 0 0          
    12 1002 11 49012 12 4 小鱼 1 9 0 0     要用sqlldr根据第一个字段(自设的标志位)导入不同的表中,ctl文件为:
    Load data
    infile "F:\tmp\pp.txt"
    replace
    into table P_cc_tb
    when (1:2)=' 1'
    trailing nullcols
    (
    aa position(4:7),
    ...
    )into table P_dd_tb
    when (1:2)='12'
    trailing nullcols
    (
    bb position(4:7),
    ...
    )使用when导入多个表中时,一定要用position,不能用terminated。