[Hint] USERENV and SYS_CONTEXT

Dúvidas, dicas e truques de PL/SQL. Aqui também vão assuntos relacionados a pacotes, triggers, funções, Java-Stored Procedures, etc
  

Poston Thu, 27 May 2004 10:19 pm

These functions return basically the system information such as the type of language being used, the machine's IP connected, the session number, etc. I will put here a summary:
Code: Select all
Parametro       Explicação
CLIENT_INFO     Retorna o usuário da sessão gravada usando o pacote DBMS_APPLICATION_INFO
ENTRYID         
INSTANCE        Número identificador da instância corrente
ISDBA           Boolean - indica se o usuário tem privilégios de DBA.
LANG            Abreviação ISO da linguagem
LANGUAGE        Linguagem, território e caracter_set da sessão.
                (Formato: linguagem_territorio.character_set )
SESSIONID       Sessão corrente
TERMINAL        Nome do usuário do SO
Example:
Code: Select all
SQL> select userenv ('LANGUAGE') from dual;

USERENV('LANGUAGE')
--------------------------------------------
AMERICAN_AMERICA.WE8ISO8859P1

SQL>
[color = red] important: the Userenv is present only for compatibility. Was replaced by SYS_CONTEXT![/color]

The Sys_context may have the following options:
Code: Select all
AUDITED_CURSORID
AUTHENTICATION_DATA
AUTHENTICATION_TYPE
BG_JOB_ID
CLIENT_IDENTIFIER
CLIENT_INFO
CURRENT_SCHEMA
CURRENT_SCHEMAID
CURRENT_SQL
CURRENT_USER
CURRENT_USERID
DB_DOMAIN
DB_NAME
ENTRYID
EXTERNAL_NAME
FG_JOB_ID
GLOBAL_CONTEXT_MEMORY
HOST
INSTANCE
IP_ADDRESS
ISDBA
LANG
LANGUAGE
NETWORK_PROTOCOL
NLS_CALENDAR
NLS_CURRENCY
NLS_DATE_FORMAT
NLS_DATE_LANGUAGE
NLS_SORT
NLS_TERRITORY
OS_USER
PROXY_USER
PROXY_USERID
SESSION_USER
SESSION_USERID
SESSIONID
TERMINAL
an example of its use:
Code: Select all
SQL> select sys_context ('USERENV', 'NLS_DATE_FORMAT')
  2  from dual;

SYS_CONTEXT('USERENV','NLS_DATE_FORMAT')
--------------------------------------------------------
dd/mon/yyyy

SQL>
more info: http://www.psoug.org/reference/sys_context.html
dr_gori
Location: Portland, OR USA

Thomas F. G

Você já respondeu a dúvida de alguém hoje?
http://glufke.net/oracle/search.php?search_id=unanswered


  • See also
    Replies
    Views
    Last Post