比如表结构是
(id char(5),
 sum number(18,2),
 condition varchar2(100),
 readonly  char(2)
 )
其中第四个字段可为空,第三个字段的内容是用逗号隔开的,
比如数据:
t1014   5600.50    1,2,3     T
t1013   56.50      3         T
t1012   677.50     2         
t1011   500.50     1         F
t1010   1000.50    1,3       我用PL/SQL DEV导出保存为csv文件,之后用sqlldr读入进去的时候,有一些数据加不进去,比如里面的第1,3,5条数据,估计是最后一项不能为空,而且不允许中间的内容有逗号吧    怎么办呢?

解决方案 »

  1.   

    sqlldr好像确实有分隔符 估计是逗号吧
    你可以先把逗号统一换成一个特殊字符,假设是@#¥%,导完再update一下
      

  2.   

    你把csv数据格式整理下,再指定SQLLDR的分割符
      

  3.   

    怎么设定导出的csv文件的分隔符呢,还有如果最后一个字段为空   导入的时候他会不会无法自己识别呀?
      

  4.   

    还有   在哪里设置那个导出的csv文件的分隔符呀?
    我用的PL/SQL工具,只有导出路径的选项,没有分隔符的选择咧……
      

  5.   

    sqlldr在pl sql中没有
    你从网上搜一下sqlldr怎么用
    大概就是 先写一个ctl文件 内容为
    load data
    infile '成绩.csv'
    append into table mw_app.mwt_gradeinfo 
    fields terminated ','
    (
    stuname,
    subject,
    grade
    )
    然后写个bat文件调用这个ctl文件
    bat文件内容
    sqlldr mw_sys/sys@yaocongying control=csv.ctl log=excel.log
    pause