用for循环的方法,如果有n条语句,那么客户端就和sql引擎通信n次。触发器的方式是可行的,至少可以减少代码量。优化的空间在于触发器是编译过的语句,但是如果你的代码本身就是存储过程,那么触发器就没有优化的意义。优化的核心思想是减少客户端和sql引擎的通信次数。写个存储过程,把数据存入一个类型为%RowType的table或者varray中,对每个表用insert1条语句插入数据,可以大大提高效率。你描述的情况,可以优化到只进行9次insert操作。
解决方案 »
- 求sql语句,各位高手给看看!
- 怎么我安装的Oracle 11g 的 sqlplus 是win32的啊 应该怎么配置啊?
- PLSQL9.0.2无法链接到Oracle数据库,弹白框!!!
- 存储过程问题
- unix下面有类似odbc的东西可以操作多种数据库吗
- java连接Oracle java.sql.SQLException: Connection refused: connect
- 字段名称除了字母和数字以外还有什么字符是合法的?空格,括号,/,.-合法吗?字段名最长可以多长?数据表最多可以有多少个字段?
- 数据库设计问题
- 各位大侠请帮我一下
- ORACLE 11安装时的问题
- 请教高手:左右联接(+)能否在多个表(2个以上)之间使用?
- 如何在oracle后台数据库级的触发器中获得用户对数据库发出的每条sql语句?
数据量如果非常大,必须解决与SQL引擎频繁的问题。大量数据情况下,在这方面做的优化效果是数量级提高的。