Dear readers of our blog, we'd like to recommend you to visit the main page of our website, where you can learn about our product SQLS*Plus and its advantages.
 
SQLS*Plus - best SQL Server command line reporting and automation tool! SQLS*Plus is several orders of magnitude better than SQL Server sqlcmd and osql command line tools.
 

REQUEST COMPLIMENTARY SQLS*PLUS LICENCE

Enteros UpBeat offers a patented database performance management SaaS platform. It proactively identifies root causes of complex revenue-impacting database performance issues across a growing number of RDBMS, NoSQL, and deep/machine learning database platforms. We support Oracle, SQL Server, IBM DB2, MongoDB, Casandra, MySQL, Amazon Aurora, and other database systems.

Oracle SYS_CONTEXT function

27 July 2020

Oracle SYS_CONTEXT function

Oracle/PLSQL function SYS_CONTEXT is used to get information about the state of Oracle environment.

Syntax of Oracle/PLSQL function SYS_CONTEXT

SYS_CONTEXT( namespace_id, parameter_id, [ length_id ] )

  • namespace_id – is an Oracle namespace that has already been created. If the ‘USERENV’ namespace is used, the description attributes of the current Oracle session can be returned.
  • parameter_id – allowed attribute that was set using the DBMS_SESSION.SET_CONTEXT procedure.
  • length_id – is optional. It’s the length of the return value in bytes. If this parameter is not specified or if an invalid input is specified, SYS_CONTEXT will be 256 bytes by default.

Note: The default value of SYS_CONTEXT is 256 bytes:
Allowed parameters for the ‘USERENV’ namespace: (Note that not all parameters are valid in all versions of Oracle)

ParameterExplanationOracle 9iOracle 10gOracle 11g
ACTIONReturns the position in the moduleNoYesYes
AUDITED_CURSORIDReturns the cursor ID of the SQL that triggered the auditYesYesYes
AUTHENTICATED_IDENTITYReturns the identity used in authenticationNoYesYes
AUTHENTICATION_DATAAuthentication dataYesYesYes
AUTHENTICATION_METHODReturns the method of authenticationNoYesYes
AUTHENTICATION_TYPEDescribes how the user was authenticated. Can be one of the following values: Database, OS, Network, or ProxyYesNoNo
BG_JOB_IDIf the session was established by an Oracle background process, this parameter will return the Job ID. Otherwise, it will return NULL.YesYesYes
CLIENT_IDENTIFIERReturns the client identifier (global context)YesYesYes
CLIENT_INFOUser session informationYesYesYes
CURRENT_BINDBind variables for fine-grained auditingNoYesYes
CURRENT_SCHEMAReturns the default schema used in the current schemaYesYesYes
CURRENT_SCHEMAIDReturns the identifier of the default schema used in the current schemaYesYesYes
CURRENT_SQLReturns the SQL that triggered the audit eventYesYesYes
CURRENT_SQL_LENGTHReturns the length of the current SQL statement that triggered the audit eventNoYesYes
CURRENT_USERName of the current userYesNoNo
CURRENT_USERIDUserid of the current userYesNoNo
DB_DOMAINDomain of the database from the DB_DOMAIN initialization parameterYesYesYes
DB_NAMEName of the database from the DB_NAME initialization parameterYesYesYes
DB_UNIQUE_NAMEName of the database from the DB_UNIQUE_NAME initialization parameterNoYesYes
ENTRYIDAvailable auditing entry identifierYesYesYes
ENTERPRISE_IDENTITYReturns the user’s enterprise-wide identityNoYesYes
EXTERNAL_NAMEExternal of the database userYesNoNo
FG_JOB_IDIf the session was established by a client foreground process, this parameter will return the Job ID. Otherwise, it will return NULL.YesYesYes
GLOBAL_CONTEXT_MEMORYThe number used in the System Global Area by the globally accessed contextYesYesYes
GLOBAL_UIDThe global user ID from Oracle Internet Directory for enterprise security logins. Returns NULL for all other logins.NoNoYes
HOSTName of the host machine from which the client has connectedYesYesYes
IDENTIFICATION_TYPEReturns the way the user’s schema was createdNoYesYes
INSTANCEThe identifier number of the current instanceYesYesYes
INSTANCE_NAMEThe name of the current instanceNoYesYes
IP_ADDRESSIP address of the machine from which the client has connectedYesYesYes
ISDBAReturns TRUE if the user has DBA privileges. Otherwise, it will return FALSE.YesYesYes
LANGThe ISO abbreviate for the languageYesYesYes
LANGUAGEThe language, territory, and character of the session. In the following format: language_territory.charactersetYesYesYes
MODULEReturns the appplication name set through DBMS_APPLICATION_INFO package or OCINoYesYes
NETWORK_PROTOCOLNetwork protocol usedYesYesYes
NLS_CALENDARThe calendar of the current sessionYesYesYes
NLS_CURRENCYThe currency of the current sessionYesYesYes
NLS_DATE_FORMATThe date format for the current sessionYesYesYes
NLS_DATE_LANGUAGEThe language used for datesYesYesYes
NLS_SORTBINARY or the linguistic sort basisYesYesYes
NLS_TERRITORYThe territory of the current sessionYesYesYes
OS_USERThe OS username for the user logged inYesYesYes
POLICY_INVOKERThe invoker of row-level security policy functionsNoYesYes
PROXY_ENTERPRISE_IDENTITYThe Oracle Internet Directory DN when the proxy user is an enterprise userNoYesYes
PROXY_GLOBAL_UIDThe global user ID from Oracle Internet Directory for enterprise user security proxy users. Returns NULL for all other proxy users.NoYesYes
PROXY_USERThe name of the user who opened the current session on behalf of SESSION_USERYesYesYes
PROXY_USERIDThe identifier of the user who opened the current session on behalf of SESSION_USERYesYesYes
SERVER_HOSTThe host name of the machine where the instance is runningNoYesYes
SERVICE_NAMEThe name of the service that the session is connected toNoYesYes
SESSION_USERThe database user name of the user logged inYesYesYes
SESSION_USERIDThe database identifier of the user logged inYesYesYes
SESSIONIDThe identifier of the auditing sessionYesYesYes
SIDSession numberNoYesYes
STATEMENTIDThe auditing statement identifierNoYesYes
TERMINALThe OS identifier of the current sessionYesYesYes

 

The SYS_CONTEXT function can be used in the following versions of Oracle/PLSQL

Oracle 12c, Oracle 11g, Oracle 10g, Oracle 9i, Oracle 8i

Let’s consider some examples of Oracle SYS_CONTEXT function and learn how to use SYS_CONTEXT function in Oracle/PLSQL.

SELECT SYS_CONTEXT('USERENV', 'LANG') FROM DUAL;

--Result: RU

SELECT SYS_CONTEXT('USERENV', 'LANGUAGE') FROM DUAL;

--Result: RUSSIAN_CIS.CL8MSWIN1251.

SELECT SYS_CONTEXT('USERENV', 'NLS_CALENDAR') FROM DUAL;

--Result: GREGORIAN

SELECT SYS_CONTEXT('USERENV', 'NLS_DATE_FORMAT') FROM DUAL;

--Result: DD.MM.RR

SELECT SYS_CONTEXT('USERENV', 'NLS_TERRITORY') FROM DUAL;

--Result: CIS

SQL Tutorial For Beginners : What is SYS_CONTEXT in Oracle with Example

 
Tags: , , , , ,

MORE NEWS

 

Preamble​​NoSql is not a replacement for SQL databases but is a valid alternative for many situations where standard SQL is not the best approach for...

Preamble​​MongoDB Conditional operators specify a condition to which the value of the document field shall correspond.Comparison Query Operators $eq...

5 Database management trends impacting database administrationIn the realm of database management systems, moreover half (52%) of your competitors feel...

The data type is defined as the type of data that any column or variable can store in MS SQL Server. What is the data type? When you create any table or...

Preamble​​MS SQL Server is a client-server architecture. MS SQL Server process starts with the client application sending a query.SQL Server accepts,...

First the basics: what is the master/slave?One database server (“master”) responds and can do anything. A lot of other database servers store copies of all...

Preamble​​Atom Hopper (based on Apache Abdera) for those who may not know is an open-source project sponsored by Rackspace. Today we will figure out how to...

Preamble​​MongoDB recently introduced its new aggregation structure. This structure provides a simpler solution for calculating aggregated values rather...

FlexibilityOne of the most advertised features of MongoDB is its flexibility.  Flexibility, however, is a double-edged sword. More flexibility means more...

Preamble​​SQLShell is a cross-platform command-line tool for SQL, similar to psql for PostgreSQL or MySQL command-line tool for MySQL.Why use it?If you...

Preamble​​Writing an application on top of the framework on top of the driver on top of the database is a bit like a game on the phone: you say “insert...

Preamble​​Oracle Coherence is a distributed cache that is functionally comparable with Memcached. In addition to the basic function of the API cache, it...

Preamble​​IBM pureXML, a proprietary XML database built on a relational mechanism (designed for puns) that offers both relational ( SQL / XML ) and...

  What is PostgreSQL array? In PostgreSQL we can define a column as an array of valid data types. The data type can be built-in, custom or enumerated....

Preamble​​If you are a Linux sysadmin or developer, there comes a time when you need to manage an Oracle database that can work in your environment.In this...

Preamble​​Starting with Microsoft SQL Server 2008, by default, the group of local administrators is no longer added to SQL Server administrators during the...