--查询动态管理数据库的信息
数据库引擎提供了动态关联一个数据库会话的机会。
客户端标识符(Client identifier):用于标识客户端的64字节长度的字符串,尽管不是非常明确。
客户端信息(Client information):用于描述客户端的64字节长度的字符串。
模块名称(Module name):用于描述会话中正在使用的模块名称的48字节长度的字符串。
数据库引擎提供了动态关联一个数据库会话的机会。
客户端标识符(Client identifier):用于标识客户端的64字节长度的字符串,尽管不是非常明确。
客户端信息(Client information):用于描述客户端的64字节长度的字符串。
模块名称(Module name):用于描述会话中正在使用的模块名称的48字节长度的字符串。
动作名称(Action name):用于描述正在处理的动作的32字节长度的字符串。
SYS@PROD1> REM
SYS@PROD1> REM Set client identifier, client information, module name and action name
SYS@PROD1> REM
SYS@PROD1>
SYS@PROD1> BEGIN
2 dbms_session.set_identifier(client_id=>'helicon.antognini.ch');
3 dbms_application_info.set_client_info(client_info=>'Linux x86_64');
4 dbms_application_info.set_module(module_name=>'session_attributes.sql',
5 action_name=>'test session information');
6 END;
7 /
PL/SQL procedure successfully completed.
SYS@PROD1>
SYS@PROD1> PAUSE
SYS@PROD1>
SYS@PROD1> REM
SYS@PROD1> REM Get client identifier, client information, module name and action name
SYS@PROD1> REM
SYS@PROD1>
SYS@PROD1> REM From the userenv context...
SYS@PROD1>
SYS@PROD1> SELECT sys_context('userenv','client_identifier') AS client_identifier,
2 sys_context('userenv','client_info') AS client_info,
3 sys_context('userenv','module') AS module_name,
4 sys_context('userenv','action') AS action_name
5 FROM dual;
CLIENT_IDENTIFIER CLIENT_INFO MODULE_NAME ACTION_NAME
-------------------- ------------ ---------------------- ------------------------
helicon.antognini.ch Linux x86_64 session_attributes.sql test session information
SYS@PROD1>
SYS@PROD1> PAUSE
SYS@PROD1>
SYS@PROD1> REM From v$session
SYS@PROD1>
SYS@PROD1> SELECT client_identifier,
2 client_info,
3 module AS module_name,
4 action AS action_name
5 FROM v$session
6 WHERE sid = sys_context('userenv','sid');
CLIENT_IDENTIFIER CLIENT_INFO MODULE_NAME ACTION_NAME
-------------------- ------------ ---------------------- ------------------------
helicon.antognini.ch Linux x86_64 session_attributes.sql test session information