用c++ occi连接oracle数据库。做压力测试,要插入2万条数据,做过如下测试:
1. 直接insert, 用时3秒。
2. 每次insert后commit,用时3分钟。
3. 调用存储过程(存储过程中加commit和不加commit)用时3分钟。
4. 循环调用2万次空的存储过程 用时2秒钟。
5. 直接运行存储过程循环2万次insert,用时10秒。现在的目的是能让底层语言尽快的insert数据。请遇到此问题高手们告之。出现问题的原理及解决方法。目前怀疑是否oracle有保护机制,对外来流数据有加锁功能导致超时。
1. 直接insert, 用时3秒。
2. 每次insert后commit,用时3分钟。
3. 调用存储过程(存储过程中加commit和不加commit)用时3分钟。
4. 循环调用2万次空的存储过程 用时2秒钟。
5. 直接运行存储过程循环2万次insert,用时10秒。现在的目的是能让底层语言尽快的insert数据。请遇到此问题高手们告之。出现问题的原理及解决方法。目前怀疑是否oracle有保护机制,对外来流数据有加锁功能导致超时。
解决方案 »
- 什么是第四范式?请举例证明
- oracle9从控制台误删除表空间,数据文件还在,如何恢复啊!急急!!
- sql脚本请教
- oracle 汉字乱码 求解决办法
- 怎样编写一个批处理文件,执行制定的存储过程
- 我建地远程链接为什么在测试的时候不通了????排除网络不通和TNS配置的问题???
- 请问在Oracle 中怎么写这样的SQL语句。
- SP3 与 Blaster病毒 与 oracle81700
- 急:我安装了oracle的服务器,在网线有连接时一切正常,但拔下网线后,重新启动监听器,启动不了,并报错。
- oracle用sys或者sysdba登录的时候显示权限不足
- 这样通过统计信息比较执行效率行吗
- 数据库优化指的是什么东东?
程序可以保证没问题。没有过多的冗余。
2 每insert一次commit一次肯定是不合适的,效率很低
如果是插入一行,就commit的话,效率肯定低下,事务的处理是十分耗资源的。