跨Windows保留dbms_application_info设置

时间:2019-06-18 19:12:30

标签: oracle plsqldeveloper

我们曾经使用过蟾蜍,但改用了plsql devepoler ide。

在蟾蜍中:

我在窗口中运行

exec dbms_application_info.SET_MODULE('','xxx'); 
exec dbms_application_info.set_client_info('123');
exec dbms_application_info.SET_ACTION ('yyy'); 

并继续在同一窗口中工作

select COUNT(*) from my_schema.VW_PROJECT_AUTH;

没有声明开始结束;块而不是光标,而是直接在输出窗口中输出。

我要与plsql开发人员一起尝试的事情:

在命令窗口中的dbms_application_info上方设置,然后继续在sql窗口中使用该会话信息。

VW_PROJECT_AUTH是需要模块信息的视图。

我在中途以某种方式成功,但不能再做一次。

如何在命令窗口和sql窗口中使用通过dbms_application_info设置的会话信息?

编辑:

Alex's comment之后,我现在可以做:

select COUNT(*) from my_schema.VW_PROJECT_AUTH;

结果为 0

但是,当我在以下命令窗口之后在命令窗口中运行脚本时:

exec dbms_application_info.SET_MODULE('','xxx'); 
exec dbms_application_info.set_client_info('123');
exec dbms_application_info.SET_ACTION ('yyy'); 

它可以给我正确的计数,例如 1000

为什么计数为零?

1 个答案:

答案 0 :(得分:0)

想通了:

打开sql窗口并执行

declare
begin
    dbms_application_info.SET_MODULE('','xxx'); 
    dbms_application_info.set_client_info('123');
    dbms_application_info.SET_ACTION ('yyy');
end;

一旦您在脚本上运行,便一切就绪。在脚本上方发表评论,然后在相同窗口中完成工作:

select COUNT(*) from my_schema.VW_PROJECT_AUTH;