oracle中怎样优化存储过程的效率,谢谢各位大虾相助 oracle 存储过程执行速度比较慢,怎样定位到出问题的地方,或者说怎样优化存储过程的效率,谢谢各位大虾相助!!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 每一步都记录执行的起始及结束时间,然后打印出来每步的执行时间,看看哪步费时最长,然后看看是否能优化该SQL。模拟断点调试。 在pl/sql中可以单步执行,关注重点SQL语句另外,就是要在算法上考虑了 create procedure p1is v_time date;begin v_time := sysdate; sqlstatement... insert into log_table(begin_time,end_time) values(v_time,sysdate); v_time := sysdate; sqlstatement... insert into log_table(begin_time,end_time) values(v_time,sysdate);end; 1. 先定位执行速度慢的语句,只能单步调试,或加入记录时间的代码(记录时间最好用systimestamp,这样比较精确)2. 对执行速度慢的语句,查看执行计划,找出速度慢的原因。如果单个语句执行没有太大问题,那就只能检查自己的算法了。 应该是某个sql执行很慢,可以写一个Log记录每个步骤的时间这样就知道哪里慢了,然后改进 oracle查询日期的问题 ORACLE视图与索引问题 oracle session常用语句 导入表空间问题 SQL中from后面最多可以列多少个表或视图? oracle数据库导入clob数据 在一个Procedure中怎么不能使用dbms_aq包啊,应该怎么做才能使用???请大侠赐教 数据库的高手有无意向到华为? 在select语句里面出现除0,如何处理请各位高手帮助 怎么创建一个带参数的视图? plsql存储过程调试问题 oracle的问题
模拟断点调试。
另外,就是要在算法上考虑了
is
v_time date;
begin
v_time := sysdate;
sqlstatement...
insert into log_table(begin_time,end_time) values(v_time,sysdate);
v_time := sysdate;
sqlstatement...
insert into log_table(begin_time,end_time) values(v_time,sysdate);
end;
2. 对执行速度慢的语句,查看执行计划,找出速度慢的原因。
如果单个语句执行没有太大问题,那就只能检查自己的算法了。