在linux下的Oracle的奇怪问题

imfjl 2004-04-17 05:14:17
我使用如下的过程,想测试用循环遍历一次表所需时间.结果该过程在linux下居然用了4分钟,而在windows下才用了32秒.(用select count(*) from Table_record速度都很快).两台机的配置并不相差太多啊.
过程如下:
CREATE OR REPLACE PROCEDURE MyTest IS;
v_count number;
v_row Table_record_1000000%RowType;
CURSOR cur_record IS SELECT * FROM Table_record;
BEGIN v_count:= 0;
DBMS_OUTPUT.PUT_LINE( TO_CHAR( SYSDATE , 'YYYY-MM-DD HH24:MI:SS' ) );
OPEN cur_record;
LOOP
FETCH cur_record INTO v_row;
EXIT WHEN cur_record%NOTFOUND; v_count := v_count + 1;
END LOOP;
DBMS_OUTPUT.PUT_LINE( TO_CHAR(v_count) ); DBMS_OUTPUT.PUT_LINE( TO_CHAR( SYSDATE , 'YYYY-MM-DD HH24:MI:SS' ) );
END;
...全文
35 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
imfjl 2004-04-18
  • 打赏
  • 举报
回复
linux的优化?具体指哪方面呢?
beckhambobo 2004-04-17
  • 打赏
  • 举报
回复
用游标当然慢,linux的优化是否设置
ATCG 2004-04-17
  • 打赏
  • 举报
回复
多试几次,也许LINUX机器正运行其它进程,资源被占

17,382

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧