我想将将近2000万条的数据从文件里读出插入到数据库里(半小时内为宜)
现在我是在linux下用proc一条一条的insert然后commit
这样做的效率是100万需要3分钟 预计2000万需要一个多小时
关键这还是空表,将来数据一多还会更慢
所以请问大家有没有好的方案提供给我
我对数据库不是很熟悉,所以大家最好提供给我一些好搜索的知识点
目前我在看sqlload方式,不知这条路可否实现我的需求?先在此谢过各位!oracle数据库linux
现在我是在linux下用proc一条一条的insert然后commit
这样做的效率是100万需要3分钟 预计2000万需要一个多小时
关键这还是空表,将来数据一多还会更慢
所以请问大家有没有好的方案提供给我
我对数据库不是很熟悉,所以大家最好提供给我一些好搜索的知识点
目前我在看sqlload方式,不知这条路可否实现我的需求?先在此谢过各位!oracle数据库linux
insert all
into c_temp values('3')
into c_temp values('4')
select * from dual;
SQL> INSERT ALL
2 INTO TABLE_STORAGE VALUES (TABLE_NAME, TABLESPACE_NAME, PCT_FREE, PCT_USED,
3 INI_TRANS, MAX_TRANS, INITIAL_EXTENT, NEXT_EXTENT, MIN_EXTENTS, MAX_EXTENTS,
4 PCT_INCREASE, FREELISTS, FREELIST_GROUPS)
5 INTO TABLE_STAT VALUES (TABLE_NAME, NUM_ROWS, BLOCKS, EMPTY_BLOCKS, AVG_SPACE,
6 CHAIN_CNT, AVG_ROW_LEN)
7 SELECT * FROM USER_TABLES;已创建54行。SQL> SELECT COUNT(*) FROM TABLE_STORAGE; COUNT(*)
----------
27SQL> SELECT COUNT(*) FROM TABLE_STAT; COUNT(*)
----------
27SQL> SELECT COUNT(*) FROM USER_TABLES; COUNT(*)
----------
27
剩下的工作就是格式化字段了谢谢两位了