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:
>>-+-+-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:
- The SQL 2003 Core standard uses the form with the underscore.
The value of these special registers cannot be null.