ITPUB论坛 » Oracle数据库管理 » insert 难题


2008-7-5 18:53 chenzhanyiasd
insert 难题

现在有10000条数据,需要插入到table1里,怎样能加快插入速度?除了用hint /*+append*/以外

当然,这个表有index的

2008-7-5 18:59 sss0326
去掉索引,插入再重新创建?

2008-7-5 19:54 reggie_zb
[quote]原帖由 [i]sss0326[/i] 于 2008-7-5 18:59 发表 [url=http://www.itpub.net/redirect.php?goto=findpost&pid=10866905&ptid=1017308][img]http://www.itpub.net/images/common/back.gif[/img][/url]
去掉索引,插入再重新创建? [/quote]

        如果有触发器,把触发器也停掉 !

2008-7-5 20:02 棉花糖ONE
汗10000条

2008-7-5 20:29 chinecj
解决办法如下:

1、批量数据导入:ctl文件方式——具体在网上找一下批量导入方法,一般都有介绍的;

2、考虑用存储过程;

2008-7-5 20:37 chenzhanyiasd
不,这只是假设,假如一次性插入1000000呢?

假如这是去掉index的话,在建的话,会不会时间又花在重建的时候呢?

2008-7-5 22:44 bailiu2002
如果有必要就分批插入。停觸發器﹐會不會帶來其他問題喲﹗

2008-7-6 10:45 kakamylove
我的一张表有1千多万条数据啊  
郁闷死了

2008-7-6 12:10 tam509
expdp,impdp

2008-7-6 12:15 howard_zhang
:)这个题难度太大了

2008-7-6 14:41 unix007
最近做了一个1.3亿条的巨表,做了20个小时还没有imp完,晕死了。
后面还有一个7.5亿条的巨表,已经做了3天了,不知道imp完了没有。

2008-7-7 11:44 mihawk
exchange partition

2008-7-7 12:58 hoqingyuexiao
1. nologging
2. parallel insert
3. dorp index, then recreate
...

2008-7-7 13:13 qgw521
学习

2008-7-7 13:13 zerocool88888888
可以把数据库分做几部分,用多个SQL*LOAD同时插入

2008-7-7 13:24 funnyok
partition the table with local index
sqlldr load parallel into temp tables without index
create index on temp table
exchange temp table and partition

[[i] 本帖最后由 funnyok 于 2008-7-7 13:26 编辑 [/i]]

页: [1]
查看完整版本: insert 难题


Powered by ITPUB论坛