oracle通过.txt文件导入百万数据,效率高 |
您所在的位置:网站首页 › 将sql文件导入oracle数据库 › oracle通过.txt文件导入百万数据,效率高 |
最近在项目遇到了oralce需要导入50多万条数据的需求,使用insert语句1万条数据差不多最快需要30秒,那么50次呢...效率太低。通过在网上查阅资料找到了一个比较高效的方法。具体操作如下: 1. 需要导入数据的表先创建好比如说需要导入数据的表BJ_TD_TXBH有2列,字段为GUID、TXBH。 创建表的sql(没有考虑添加主键,如果添加主键GUID,那么要确保导入50万条的数据GUID唯一) -- Create table create table BJ_TD_TXBH ( GUID varchar2(50), TXBH varchar2(50) ) tablespace USERS pctfree 10 initrans 1 maxtrans 255 storage ( initial 64K next 8 minextents 1 maxextents unlimited ); -- Add comments to the columns comment on column BJ_TD_TXBH.GUID is 'GUID'; comment on column BJ_TD_TXBH.TXBH is '图形编号';创建完成之后,查询没有数据。 2.创建好表之后,将需要导入的2列数据保存到.txt文件,使用逗号隔开。txt文件插入13000条数据 将需要导入的2列数据排列格式效果如图(文件名为txbh.txt):
tip: 因为我这边提供的数据是从excel复制过来的,怎么将50多万条数据GUID和TXBH中间加逗号呢? 方法如图: 上效果图,并语法解释:
编写好.ctl文件和.txt文件之后,放入到D:/sql文件中。 执行脚本语法: sqlldr userid=用户名/密码@数据库实例名 control=脚本名执行结果(测试插入了13000条数据):
1.当时在服务器操作的时候,使用记事本打开.ctl文件之后可能会损坏文件格式,执行脚本会报错。建议使用编译器或者notepad++来进行操作。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |