在做MIS开发时,遇到大批次数据会Insert到数据库,发现速度不是很理想,大概2W笔记录需要10分钟。我在更新时做了以下的努力:
1.采用了批次更新,每50笔记录提交到服务器一次。
2.SQL进行了优化,重复的取值已放在Loop外面。
烦请高手支招,请问一般大批次数据Insert到数据库时还需要注意哪些问题,有哪些途径可以提高执行效率。非常感谢!
估计数据量大时大概每次会有10W笔记录写到表中,并还会更新另外一个表10W条记录的字段(此字段已建索引),。
开发环境是Delphi+Oracle9i。
1.采用了批次更新,每50笔记录提交到服务器一次。
2.SQL进行了优化,重复的取值已放在Loop外面。
烦请高手支招,请问一般大批次数据Insert到数据库时还需要注意哪些问题,有哪些途径可以提高执行效率。非常感谢!
估计数据量大时大概每次会有10W笔记录写到表中,并还会更新另外一个表10W条记录的字段(此字段已建索引),。
开发环境是Delphi+Oracle9i。
将脚本 ftp 到 oracle 服务器上提交,速度快了n倍,n> 30
将脚本 ftp 到 oracle 服务器上提交,速度快了n倍,n> 30
/////////////////////////
如何将脚本 ftp 到 oracle 服务器?
INSERT通过事务提交脚本,不要通过程序运行
然后每1000条提交一次数据库,实验效果证明,每秒可写5000多条数据。