首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

存储过程Insert为啥比PLSQL慢好多

2013-06-26 
存储过程Insert为什么比PLSQL慢好多我有一张表 A,此表有几个索引,有一个字段ID,是用sequence触发器实现自

存储过程Insert为什么比PLSQL慢好多
我有一张表 A,此表有几个索引,有一个字段ID,是用sequence触发器实现自增的。

我在PLSQL中执行Insert into A Select * from B 的速度大概是3秒,在存储过程中执行需要90秒。

我执行的是同样的SQL语句,存储过程中没有参数。

后来我发现将表的触发器去掉的话,那么存储过程中他执行的速度也会非常快。

请问有高手知道为什么在PLSQL中执行很快,存储过程中很慢吗?难道不能在存储过程中插入数据到有触发器
的表吗?
[解决办法]
你给出的信息太少了。
表结构、触发器脚本、数据量、索引这些都有影响。
[解决办法]
除了存储过程的定义,其他一模一样?没有加任何东西?


[解决办法]
建议 在 存储过程里面 捕获 sql的执行计划,和你单独运行sql的执行计划是否一样

我感觉这种问题,就是执行计划有改变,虽然sql是一致的。
[解决办法]
明天我也去试下看看。。

触发器这个东西能不用就不用。很耗性能

热点排行