日期:2014-05-16  浏览次数:20827 次

从文件读取大量数据插入oracle的效率问题
我想将将近2000万条的数据从文件里读出插入到数据库里(半小时内为宜)
现在我是在linux下用proc一条一条的insert然后commit
这样做的效率是100万需要3分钟 预计2000万需要一个多小时
关键这还是空表,将来数据一多还会更慢
所以请问大家有没有好的方案提供给我
我对数据库不是很熟悉,所以大家最好提供给我一些好搜索的知识点
目前我在看sqlload方式,不知这条路可否实现我的需求?

先在此谢过各位!
oracle 数据库 linux

------解决方案--------------------
可以使用'INSERT ALL'来插入多行:
  insert all
  into c_temp values('3')
  into c_temp values('4')
 select * from dual;

------解决方案--------------------
sqlload方式要比INSERT 快的多,你可以试试。另外 INSERT APPEND的方式也比INSERT快。