ORACLE USERENV函式

不一樣的天空w發表於2017-04-28
ORACLE USERENV函式

USERENV返回關於當前會話的資訊。
此資訊可以用於編寫一個應用程式特定的審計跟蹤表或確定特定於語言的角色目前使用的會話。
引數 功能
CLINET_INFO 返回最高可達64個位元組儲存的使用者會話資訊,可由應用程式使用DBMS_APPLICATION_INFO包。
ENTRYID
返回當前審計條目編號。審計的EntryID序列細粒度的審計記錄和定期審計記錄之間共享。在分散式SQL語句不能使用這個屬性。
ISDBA
如果使用者已經被認證為dba;或者是透過作業系統或口令檔案具有DBA特權的,返回“TRUE",否則返回"FALSE"
LANG
返回ISO縮寫語言名稱,一個比現有的“語言”引數較短的形式
LNAGUAGE
返回資料庫當前會話的語言、地域和字符集
SESSIONID
返回審計會話識別符號。在分散式SQL語句不能指定此引數
SID 返回資料庫會話ID
TERMINA
返回當前會話的終端作業系統的識別符號。在分散式SQL語句,此引數返回了識別符號為本地會話。在分散式環境中,此引數只支援遠端SELECT語句,不用於遠端INSERT,UPDATE或DELETE操作。

1.USEREVN()


返回當前使用者環境的資訊,opt可以是:
ENTRYID,SESSIONID,TERMINAL,ISDBA,LABLE,LANGUAGE,CLIENT_INFO,LANG,VSIZE

1.ISDBA 檢視當前使用者是否是DBA如果是則返回true
SQL> select userenv('isdba') from dual;

USEREN
------
FALSE


2.SESSION 返回會話標誌


SQL> select userenv('sessionid') from dual;

USERENV('SESSIONID')
--------------------
152


4.ENTRYID 返回會話人口標誌


SQL> select userenv('entryid') from dual;

USERENV('ENTRYID')
------------------
0


5.INSTANCE 返回當前INSTANCE的標誌
SQL> select userenv('instance') from dual;

USERENV('INSTANCE')
-------------------
1


6.LANGUAGE 返回當前環境變數
SQL> select userenv('language') from dual;

USERENV('LANGUAGE')
----------------------------------------------------
SIMPLIFIED CHINESE_CHINA.ZHS16GBK

7.LANG 返回當前環境的語言的縮寫
SQL> select userenv('lang') from dual;

USERENV('LANG')
----------------------------------------------------
ZHS


8.TERMINAL 返回使用者的終端或機器的標誌
SQL> select userenv('terminal') from dual;

USERENV('TERMINA
----------------
GAO


9.VSIZE(X) 返回X的大小(位元組)數
SQL> select vsize(user),user from dual;

VSIZE(USER) USER
----------- ------------------------------
6 SYSTEM



2、sys_context

select
SYS_CONTEXT('USERENV','TERMINAL') terminal,
SYS_CONTEXT('USERENV','LANGUAGE') language,
SYS_CONTEXT('USERENV','SESSIONID') sessionid,
SYS_CONTEXT('USERENV','INSTANCE') instance,
SYS_CONTEXT('USERENV','ENTRYID') entryid,
SYS_CONTEXT('USERENV','ISDBA') isdba,
SYS_CONTEXT('USERENV','NLS_TERRITORY') nls_territory,
SYS_CONTEXT('USERENV','NLS_CURRENCY') nls_currency,
SYS_CONTEXT('USERENV','NLS_CALENDAR') nls_calendar,
SYS_CONTEXT('USERENV','NLS_DATE_FORMAT') nls_date_format,
SYS_CONTEXT('USERENV','NLS_DATE_LANGUAGE') nls_date_language,
SYS_CONTEXT('USERENV','NLS_SORT') nls_sort,
SYS_CONTEXT('USERENV','CURRENT_USER') current_user,
SYS_CONTEXT('USERENV','CURRENT_USERID') current_userid,
SYS_CONTEXT('USERENV','SESSION_USER') session_user,
SYS_CONTEXT('USERENV','SESSION_USERID') session_userid,
SYS_CONTEXT('USERENV','PROXY_USER') proxy_user,
SYS_CONTEXT('USERENV','PROXY_USERID') proxy_userid,
SYS_CONTEXT('USERENV','DB_DOMAIN') db_domain,
SYS_CONTEXT('USERENV','DB_NAME') db_name,
SYS_CONTEXT('USERENV','HOST') host,
SYS_CONTEXT('USERENV','OS_USER') os_user,
SYS_CONTEXT('USERENV','EXTERNAL_NAME') external_name,
SYS_CONTEXT('USERENV','IP_ADDRESS') ip_address,
SYS_CONTEXT('USERENV','NETWORK_PROTOCOL') network_protocol,
SYS_CONTEXT('USERENV','BG_JOB_ID') bg_job_id,
SYS_CONTEXT('USERENV','FG_JOB_ID') fg_job_id,
SYS_CONTEXT('USERENV','AUTHENTICATION_TYPE') authentication_type,
SYS_CONTEXT('USERENV','AUTHENTICATION_DATA') authentication_data
from dual;

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31397003/viewspace-2138146/,如需轉載,請註明出處,否則將追究法律責任。

相關文章