dbms_application_info包的一个问题

[复制链接]
查看11 | 回复6 | 2005-10-30 17:05:33 | 显示全部楼层 |阅读模式
PL/SQL运行过程中使用dbms_application_info包,将有关信息记录到v$session_longops视图中,以便监控程序执行的进度情况,我运行下面的PL/SQL块,v$session_longops视图中增加了一条信息。
但是这条信息总是存在。
我想问问,为什么我用户已经退出了,这条记录还是存在呀?
什么情况下,才清空这条记录啊?
[PHP]
DECLARE
rindexBINARY_INTEGER;
slnoBINARY_INTEGER;
totalwork number;
sofar number;
obj BINARY_INTEGER;
BEGIN
rindex := dbms_application_info.set_session_longops_nohint;
sofar := 0;
totalwork := 10;

WHILE sofar < 10 LOOP
sofar := sofar + 1;
dbms_application_info.set_session_longops(rindex,
slno,'aaaaaaaaaaaa', obj, 0, sofar, totalwork,'bbbbbbbbbbbbb','ccccccccccccccc');
END LOOP;
END;
[/PHP]
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
V$SESSION_LONGOPS 好象是ORACLE内部自动管理的。
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
用dbms_application_info包的set_session_longops过程,是可以向V$SESSION_LONGOPS这个表中添加记录的。
就是不知道添加了之后怎么清除?
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
嗯,我的意思是那些记录的删除应该是ORACLE内部进行的,因为并没有发现相应的删除方法。
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
楼上的确定吗?一定没有办法清除??
最起码,在重启数据库的时候,确实是消失了
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
自动的。
http://groups.google.co.uk/group ... en#533b033585966466
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
最初由 玉面飞龙 发布
[B]自动的。
http://groups.google.co.uk/group ... en#533b033585966466 [/B]

看他们说的是,记录可以被重新使用,就是说没有必要清空它,是这意思吧?
回复

使用道具 举报

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

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行