我需要选择一个名为job的作业,我需要查询该函数,但遗憾的是我无法弄明白,有人可以帮助我吗? 谢谢; - )
答案 0 :(得分:1)
我想你可以用User defined Context来完成你想做的事。
为了能够首先使用用户定义的上下文,您需要创建一个可信过程,该过程将用于在上下文中设置属性。我们需要这样做,因为dbms_session.set_context不能直接使用。
create procedure set_test_ctx
(
p_attribute_name in varchar2,
p_attribute_value in varchar2
) is
begin
dbms_session.set_context(
'test_ctx',
p_attribute_name,
p_attribute_value);
end;
/
在此之后我们将创建我们的上下文
create context test_ctx using set_test_ctx;
如果您需要与其他用户一起使用此上下文,请不要忘记发放授权。
grant execute on set_test_ctx to test_user;
现在您可以使用该过程来使用上下文并使用视图" session_context"或函数SYS_CONTEXT来检索值。
execute set_test_ctx('ATTRIBUTE1', 'value1');
select value from session_context where namespace='TEST_CTX' and ATTRIBUTE='ATTRIBUTE1';
select sys_context('TEST_CTX','ATTRIBUTE1') as value from dual;