如何在Oracle SQL中列出所有用户会话参数?

4

我该如何列出Oracle数据库中的所有用户会话参数?

我发现Oracle提供了SYS_CONTEXT函数(链接),允许以以下方式检索所选参数:

SELECT SYS_CONTEXT ('USERENV', 'NLS_CURRENCY') FROM DUAL;
SELECT SYS_CONTEXT ('USERENV', 'SESSION_USER') FROM DUAL;
...

这并不理想,因为我希望能够检索所有参数而无需逐个命名,就像使用nls_session_parameters一样(链接):

SELECT * FROM nls_session_parameters;

回到我最初的问题 - 如何列出所有用户会话参数?

是否有任何表格/视图可以更智能地检索所有参数?根据我的研究,我发现了一些繁琐的方法,比如这个


1
任何关于你的问题的答案,我也有同样的问题。 - Dudi Boy
2个回答

3
你可以使用NLS_SESSION_PARAMETERS、NLS_INSTANCE_PARAMETERS和NLS_DATABASE_PARAMETERS(按优先级顺序)。

高优先级设置会覆盖低优先级设置: 设置NLS参数


4
这个问题涉及到sys_context()函数中的“USERENV”参数,而不是NLS参数。这两者之间只有少数值重叠。 - Alex Poole

2

选择*从V$PARAMETER;它也包括NLS参数


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接