关于执行效率问题

[复制链接]
查看11 | 回复9 | 2011-5-7 01:45:08 | 显示全部楼层 |阅读模式
各位大侠:
有个问题,语句大体如下:
CREATE OR REPLACE PROCEDURE PROC1
(
...参数
)
BEGIN
INSERT INTO TAB1
SELECT * FROM TAB2;
COMMIT;
END;
在单独执行
INSERT INTO TAB1
SELECT * FROM TAB;
语句的时候,只要3分钟,可是对整个的存储过程进行TEST的时候,却花了20分钟;为什么呢??
回复

使用道具 举报

千问 | 2011-5-7 01:45:08 | 显示全部楼层
将这个存储过程重新删除掉,再重新生成一份是否可以提高速度呢
回复

使用道具 举报

千问 | 2011-5-7 01:45:08 | 显示全部楼层
你试一下呢~~
回复

使用道具 举报

千问 | 2011-5-7 01:45:08 | 显示全部楼层
LZ兩個insert語句的select 表不同哦!
回复

使用道具 举报

千问 | 2011-5-7 01:45:08 | 显示全部楼层
不好意思,是一样的,少复制一个数字,应该是TAB2
回复

使用道具 举报

千问 | 2011-5-7 01:45:08 | 显示全部楼层
刚才重新试验了一下,还是不行
回复

使用道具 举报

千问 | 2011-5-7 01:45:08 | 显示全部楼层
有人知道是什么原因麻
回复

使用道具 举报

千问 | 2011-5-7 01:45:08 | 显示全部楼层
BEGIN
INSERT INTO TAB1
SELECT * FROM TAB2;
COMMIT;
END;
如上的执行时间如何?
回复

使用道具 举报

千问 | 2011-5-7 01:45:08 | 显示全部楼层
很快的,大约3分钟
就是整个存储过程执行很慢,大约20分钟
回复

使用道具 举报

千问 | 2011-5-7 01:45:08 | 显示全部楼层
很奇怪, 你的存储过程是不是还有别的代码?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行