我写了个bat批处理文件用来导入数据到数据库某张表里头,但是一直没成功,窗口跳一下就没了,什么都没执行,
我bat的内容是:sqlldr userid=username/password@server control=F:\ftp\sql\数据导入.ctl
数据导入.ctl文件内容:
load data
infile 'F:\ftp\sql\导入数据文本.txt'
append into table tablename
fields terminated by ','
(
account_id,telnum,subject_id
)另外导入数据文本.txt里面3个字段,中间用“,”隔开,我实在搞不明白为什么会不行了,以前都好好的,请各位高手指点

解决方案 »

  1.   

    这是我以前整理的,LZ参考下看看...三, SQL LOADER 实例 创建表:test_load, 
    sql>create table test_load(id number(10),uname varchar2(20), phone varchar2(20)); 
    控制文件:d:\loader.ctl 
    load data 
    infile 'd:\datafile.txt' 
    append into table test_load 
    fields terminated by "," optionally enclosed by '"' 
    ( id, uname, phone ) 数据文件:D:\datafile.txt 
    001,"david",0551-1234567 
    002,"dave",0551-7654311 
    sqlloader命令: 
    SQL>sqlldr 'sys/admin AS SYSDBA' control=D:\loader.ctl log=d:\a.log 
    SQL*Loader: Release 10.2.0.1.0 - Production on 星期四 7月 2 09:40:42 2009 
    Copyright (c) 1982, 2005, Oracle.  All rights reserved. 
    达到提交点 - 逻辑记录计数 1 
    达到提交点 - 逻辑记录计数 2 
    SQL> select * from test2; 
         EMPNO ENAME             SAL     DEPTNO 
    ---------- ---------- ---------- ---------- 
         10002 Frank             500         20 
         10001 Scott            1000         40 
      

  2.   

    bat跳一下就没了,说明bat的命令语法不对
    把命令里面的userid=去掉
      

  3.   

    谢谢各位,还是不行,同事电脑可以运行,我原原本本搬过来运行也不行,是不是因为我装的是ORCLE
    精简版的原因
      

  4.   

    不行啊,试过,提示sqlldr命令行未知,估计是oracle的问题,我的语句以前可以的,也没改过路径也没变过,就是重装过操作系统,换了oracle精简版
      

  5.   


    不是说你要导入的数据有问题,而是要导入的客户端的数据库有问题cmd进入命令行,输入sqlldr,是否报错,如果报错说明你机器上的数据库有问题