数据库表的数据与excel导入导出

通过sqlserver的DTS导入Excel数据到Oracle表中,整理如下:

1.打开sqlserver的导入导出工具

数据源选择:平面文件源(Excel另存为cvs格式文件)

选中左边的高级,在右面,把列名都填上(这里是导入Oracle里,列名大写)

2.下一步,目标:选择Oracle Provider for OLE DB(需要装Oracle客户端)

点击属性,在属性里填入数据源,用户名,密码

3.下一步,在目标:数据源列,填入导入Oracle的表名(大写)

4下一步,完成。


以下是转载的两篇文章:

sql server 2005中表的数据与excel互相导入导出的方法【二】

1、将EXECEL导入到SQLSERVER2005数据库方法示例:

insert into dbo.tbpointconfig(pointname,punit,pmax,pmin,pvalue,generatorid,pdate,cdbh)
SELECT 测点名称,单位,PMAX,PMIN,PVALUE,机组号,PDATE,TAGNAME
FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',
'Data Source="d:/荆州热电模拟量点表.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...[Sheet2$]

 2、SQLSERVER2005导出到EXECELF方法示例:

EXEC master..xp_cmdshell 'bcp 库名.dbo.表名out c:/Temp.xls -c -q -S"servername" -U"sa" -P""'
参数:S 是SQL服务器名;U是用户;P是密码
说明:还可以导出文本文件等多种格式

INSERT INTO
OPENDATASOURCE('Microsoft.JET.OLEDB.4.0',
'Extended Properties=Excel 8.0;Data source=C:/training/inventur.xls')...[Filiale1$]
(bestand, produkt) VALUES (20, 'Test'

insert into openrowset('Microsoft.Jet.OLEDB.4.0','EXCEL 8.0;HDR=YES;User id=admin;Password=;IMEX=1;
DATABASE=D:/Roy.xls'
, sheet1$)--(ID,Name)
select 2,'b'

insert into OPENROWSET('MICROSOFT.JET.OLEDB.4.0','Excel 8.0;HDR=YES;DATABASE=D:/Roy.xls',sheet1$)(ID,Name)
select 2,'b'

转自:http://blog.csdn.net/generalxck/article/details/5350985


怎样导入EXCEL表中的数据到oracle【三】

1、将excel文件(F)→另存为(A)→保存类型为:制表符分隔,起名为test.txt,保存到C:\ 
2、假设现在已有需导入的表 test1   含 两个字段   id int ,age number.
3、创建控制文件 input.ctl,保存在c:\ ,输入
  load data           --1、控制文件标识 
  infile 'test.txt'       --2、要输入的数据文件名为test.txt 
  append into table test1    --3、向表test1中追加记录 ,如果是新表,用insert 代替append
  fields terminated by X'09'  --4、字段终止于X'09',是一个制表符(TAB)
  (id,age)                      -----定义列对应顺序

4、在DOS窗口下使用SQL*Loader命令实现数据的输入 
  
C:\>sqlldr userid=system/manager control=c:\input.ctl         --用户名、密码为需要导入数据的用户名,密码

成功导入后,会提示“达到提交点,逻辑记录***”

5、可以连上数据库,查看下数据是否已经导入。


sqlldr 用法可以看这个 http://onlinechen.blog.hexun.com/10124428_d.html

-------------------------------------------------------------------------------
我的方法:

1、将EXCEL另存为.csv后缀(在另存为对话框的下拉列表中有这种类型),用记事本将.csv文件打开,将数据整理一下,例如   
   表A,有列A1,A2,A3   
   则文件中格式为:   
   1,2,3   
   2,3,4   
   注意:最后一行数据的末尾要换行一下   
   然后将其另存为一个.dat文件,(不另存也可以,我是为了规范化)   
   这是第一步。   
2、编写控制文件,格式如下:   
   load    data     
   infile    'd:\xxxx.dat'      (刚才你存的数据文件)   
   append    (增加数据需要此项,向空表插入不需要)   
   into    table    tab_name    (你的数据库表名)   
   fields    terminated    by    ','    optionally    enclosed    by    '"'   
   (A1,A2,A3)(表中的列名,要与数据文件同样顺序)   
    
   将其存为文件:xxxx.ctl。   
3、OK,在服务器的运行中写命令:   
    
   sqlldr    userid=scott\tiger    control=d:\case1.ctl    log=d:\case1.log   
    
   这就是用SQL*LOADER导入数据的全过程,希望可以帮助你。
  

方法二    利用PLSQL    Developer   
   使用PLSQL    Developer工具,这个可是大名鼎鼎的Oracle    DBA最常使用的工具。   
   在单个文件不大的情况下(少于100000行),并且目的表结构已经存在的情况下——对于excel而言肯定不会超过了,因为excel文件的最大行为65536——    可以全选数据复制,然后用PLSQL    Developer工具。   
   1    在PLSQL    Developer的sql    window里输入select    *    from    test    for    update;   
   2    按F8执行   
   3    打开锁,    再按一下加号.    鼠标点到第一列的列头,使全列成选中状态,然后粘贴,最后commit提交即可。   
   方法三    使用其它数据转移工具作中转站。   
   我使用的是Sql    Server    2000。   
   先将excel表导入sqlserver数据库中,然后再从sql    server导入到oracle中。这两部操作都简单,如果不会随便查个帮助就可以了,要不然问我也行:)   
   这里有两个自己的经验:一是注意excel文件的版本和格式要与导入到sql    server时的数据源匹配。如果导入到sql    server时的数据源选Microsoft    Excel    97-2000的话,而excel文件的版本为Micaosoft    Excel    5.0/95    工作簿,则有可能出问题。关于如何看Excle文件格式,你打开excel文件,选择另存为,即可看到像Micaosoft    Excel    5.0/95    工作簿或者是Microsoft    Office    Excle    工作簿


转自:http://hi.baidu.com/zxq211103/item/708dda1ecd3fe67b7a5f25ff

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值