我知道sqlldr可以把txt导入数据库那怎样把execl导入oracle数据库?有好的方法吗?

解决方案 »

  1.   

    给段把execl导入oracle数据库
    的代码吧
      

  2.   

    貌似我记得直接拷贝就可以。在plsql里面。呵呵。试试吧。
      

  3.   

    也是一样的,既然你能用sqlldr把txt把数据导入,为什么碰见xls就犯难了呢把ctl里面的文件名替换成xls文件的名字,为了成功起见,可以先把xls文件另存为csv格式文件,以去掉font之类的东西。后面的和txt是一样的。
      

  4.   

    pl/sql dev, Toad 能直接导入.------------------------------------------------------------------------------
    Blog: http://blog.csdn.net/tianlesoftware
    网上资源: http://tianlesoftware.download.csdn.net
    相关视频:http://blog.csdn.net/tianlesoftware/archive/2009/11/27/4886500.aspx
    Q Q 群:62697716
      

  5.   

    toad啊,plsqldev啊,直接选文件直接导
      

  6.   

    -------------------------------excel导Orcale数据库的方法-----------------------------------方法一:使用SqlLoader
    1、MicroSoft Excel文件(F)→另存为(A)→  保存类型为:制表符分隔,起名为text.txt,保存到C:\2、连入SQL*Plus
      以system/manager用户登录,
      SQL> conn system/manager  创建表结构
      SQL> create table test
        (
        id       number,        --序号
        username    varchar2(10),    --用户名
        password    varchar2(10),    --密码
        sj       varchar2(20)       --建立日期
        );3、创建SQL*Loader输入数据所需要的文件,均保存到C:\,用记事本编辑:
      控制文件:input.ctl,内容如下:
      load data                        --1、控制文件标识
      infile 'test.txt'                --2、要输入的数据文件名为test.txt
      append into table test            --3、向表test中追加记录
      fields terminated by X'09'        --4、字段终止于X'09',是一个制表符(TAB)
      (id,username,password,sj)        --定义列对应顺序
    a、insert,为缺省方式,在数据装载开始时要求表为空
    b、append,在表中追加新记录
    c、replace,删除旧记录,替换成新装载的记录
    d、truncate,同上4、在DOS窗口下使用SQL*Loader命令实现数据的输入
    C:\>sqlldr userid=system/manager control=input.ctl
      默认日志文件名为:input.log
      默认坏记录文件为:input.bad5、连接到SQL*Plus中,查看是否成功输入方法二:使用PL/Sql
    1、打开MicroSoft Excel文件(F);2、使用PL/Sql连上相应数据库,执行select * from DESTTABLE for update取消锁定3、选中Excel中要导入的数据区域,保证列的顺序和数据库字段顺序一致,ctrl+c;4、选中PL/Sql中 DESTTABLE的要导入的列,ctrl+v;5、执行post changes(小绿钩),然后commit。方法三:使用Toad
    没有装工具,还没试方法四:使用odbc+pb
    用不同的odbc驱动程序连接不通的数据库
    然后在pb环境中启动数据管道,利用数据管道传输数据
    缺点:数据量大的时候,容易发生回滚段的问题,因为其无法指定专用的回滚段
    也没试过方法五:使用sqlserver 的dts
    做一个DTS连接把EXCEL与ORACLE 对应 的连接起来就可以直接运行导入数据了
    也没试过方法六:使用excel生成脚本
    比如excel文件中有id, name两列(分别为A列和B列), 要导入的表为person(person_id, person_name)1、在excel 文件的sheet的最右列, 添加一列, 对应第一行数据的单元格写入以下内容:= "INSERT INTO PERSON(PERSON_ID, PERSON_NAME) VALUES('" & A1 & "', '" & B1 & "');"2、然后把这一行复制到所有数据行对应的列中.3、这一列的内容拷贝出去保存, 即成为可以直接在sql*plus下运行的脚本.方法七:使用Ultra Edit等生成脚本
    用列编辑功能加上insert into ....等等方法八:使用VBA生成脚本
    在Excel里加个按钮,编个宏
    觉得还不如方法六简便,对用户也不够友好。 
      

  7.   

    OPTIONS (skip=1,rows=128)
    LOAD DATA 
    INFILE "users_data.csv" truncate 
    INTO TABLE users
    Fields terminated by "," 
    Optionally enclosed by '"'
    trailing nullcols 

      
    user_id ,
      
    user_name, 
      
    login_times, 
     
    last_login DATE "YYYY-MM-DD HH24:MI:SS" 
    )
      

  8.   

    1、使用excel保存为csv格式的文档(即逗号分隔的文本格式);
    2、使用sqlldr导入oracle数据库。