我现在有很都数据,如下:
13015133312    1
13015136440    1
13015136440    0
13019533042    1
13150894884    1
13150894819    1
........
有几万行,请问怎么导入到oracle数据库中,比如我现在已经有了用户名csdn,还有很有一个表test,怎么导进去? 谢谢各位高手。

解决方案 »

  1.   

    sqlldr uesrid=xx/pw@tnssid control=myctl.ctl data=file.txt log=log.txt bad=bad.txt myctl.ctl内容为: 
    load data 
    into table table1 
    replace 
    fields terminated by '    ' 
    trailing nullcols 

    mobileNo, 
    flag
    )
    或者:
    用PL/SQL Developer的Tool里面的Text importer将记录导入(底层也是调用sqlldr)
      

  2.   

    请在具体说明一下好吗,我是oracle初学者,但有些数据要这样处理,楼上说的我有点没看懂,在具体说明一下。
      

  3.   

    使用sqlldr可以把一定格式的数据文件导入到数据库中。
    需要的是建立一个符合格式要求的数据文件和一个控制文件。
    楼上说的myctl.ctl就是一个控制文件,而
    sqlldr uesrid=xx/pw@tnssid control=myctl.ctl data=file.txt log=log.txt bad=bad.txt 
    则是sqlldr的调用方法。(不过好像把userid错写成uesrid了)
    你的文件是以四个半角空格分隔的两个字段列,所以控制文件中指定
    into table table1  <- 这是制定要装入表的表名
    ...
    fields terminated by '    ' <-这里制定字段之间由四个空着分割
    ...

    mobileNo,  <- 这里制定了要装入表的字段名
    flag 
    ) 总体来讲很简单的,你可以试试。
    当然,数据文件的物理文治也可以写在控制文件中,这样你的命令行能够短一点。
    infile 'path\filename'
      

  4.   

    TEST.TXT格式:
    13015133312    1 
    13015136440    1 
    13015136440    0 
    13019533042    1 
    13150894884    1 
    13150894819    1 创建表:
    SQL> create table test(fld1 int,fld2 int);
    创建控制文件:test.ctlLOAD DATA
    INFILE 'test.txt'
    INSERT INTO TABLE test
    FIELDS TERMINATED BY "    "
    (
      FLD1,
      FLD2
    )到数据目录下DOS窗口运行:C:\test>sqlldr userid=test/test control='test.ctl'SQL*Loader: Release 9.2.0.1.0 - Production on Fri Aug 1 11:38:53 2008Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.Commit point reached - logical record count 5
    Commit point reached - logical record count 6查询:
    SQL> select * from test;                                   FLD1                                    FLD2
    --------------------------------------- ---------------------------------------
                                13015133312                                       1
                                13015136440                                       1
                                13015136440                                       0
                                13019533042                                       1
                                13150894884                                       1
                                13150894819                                       16 rows selected成功.