Special registers

A special register is a storage area that is defined for an application process by database manager and is used to store information that can be referenced in SQL statements. A reference to a special register is a reference to a value provided by the current server. If the value is a string, its CCSID is a default CCSID of the current server.

The special registers can be referenced as follows:

Read syntax diagramSkip visual syntax diagram
>>-+-+-CURRENT CLIENT_ACCTNG-+------------+--------------------><
   | '-CLIENT ACCTNG---------'            |   
   +-+-CURRENT CLIENT_APPLNAME-+----------+   
   | '-CLIENT APPLNAME---------'          |   
   +-+-CURRENT CLIENT_PROGRAMID-+---------+   
   | '-CLIENT PROGRAMID---------'         |   
   +-+-CURRENT CLIENT_USERID-+------------+   
   | '-CLIENT USERID---------'            |   
   +-+-CURRENT CLIENT_WRKSTNNAME-+--------+   
   | '-CLIENT WRKSTNNAME---------'        |   
   +-+-CURRENT DATE-----+-----------------+   
   | |              (1) |                 |   
   | '-CURRENT_DATE-----'                 |   
   +---CURRENT DEBUG MODE-----------------+   
   +---CURRENT DECFLOAT ROUNDING MODE-----+   
   +---CURRENT DEGREE---------------------+   
   +---CURRENT IMPLICIT XMLPARSE OPTION---+   
   +-+-CURRENT PATH----------+------------+   
   | +-CURRENT FUNCTION PATH-+            |   
   | |              (1)      |            |   
   | '-CURRENT_PATH----------'            |   
   +-+-CURRENT SCHEMA-----+---------------+   
   | |                (1) |               |   
   | '-CURRENT_SCHEMA-----'               |   
   +-+-CURRENT SERVER-+-------------------+   
   | '-CURRENT_SERVER-'                   |   
   +-+-CURRENT TIME-----+-----------------+   
   | |              (1) |                 |   
   | '-CURRENT_TIME-----'                 |   
   +-+-CURRENT TIMESTAMP-----+------------+   
   | |                   (1) |            |   
   | '-CURRENT_TIMESTAMP-----'            |   
   +-+-CURRENT TIMEZONE-+-----------------+   
   | '-CURRENT_TIMEZONE-'                 |   
   +-+-SESSION_USER-+---------------------+   
   | |      (1)     |                     |   
   | '-USER---------'                     |   
   '---SYSTEM_USER------------------------'   

Notes:
  1. The SQL 2003 Core standard uses the form with the underscore.

The value of these special registers cannot be null.