FNC_DBSSessionAttrInfo Function | C Library Functions | Teradata Vantage - FNC_DBSSessionAttrInfo - Advanced SQL Engine - Teradata Database

SQL External Routine Programming

Product
Advanced SQL Engine
Teradata Database
Release Number
17.05
17.00
Published
June 2020
Language
English (United States)
Last Update
2021-01-24
dita:mapPath
qwr1571437338192.ditamap
dita:ditavalPath
lze1555437562152.ditaval
dita:id
B035-1147
lifecycle
previous
Product Category
Teradata Vantage™

Purpose

Allows table operators to retrieve information about the current session, such as system variables and session attributes.

Syntax

void 
FNC_DBSSessionAttrInfo (char  *jsonData);
char *jsonData
Session information returned by the function as a string in JSON format.

Usage Notes

The current session information returned by FNC_DBSSessionAttrInfo include the following:
  • Current user name
  • Current role name
  • Transaction mode
  • Collation

For current role name, a maximum of 127 role names are returned. If a user is granted more than 127 roles and the user issues a SET ROLE ALL statement to enable all of the roles, "ALL" is returned for the current role name. For example, the following sample output shows the session information returned for TESTUSER who has more than 127 roles enabled:

{"CurUserName":"TESTUSER","CurRoleName":"ALL","TransactionMode":"BTET","Collation":"ASCII"}

For users who specify SET ROLE ALL but have 127 roles or less, "ALL" is returned along with each of the role names. For example, TESTUSER2 has 3 roles: Role1, Role2, and Role3.

{"CurUserName":"TESTUSER2","CurRoleName":["ALL","Role1","Role2","Role3"],"TransactionMode":"BTET","Collation":"ASCII"}

Example Using FNC_DBSSessionAttrInfo

The following code fragment calls FNC_DBSSessionAttrInfo to get the current session information string.

...
char jsonData [4096] = {'\0'};
FNC_DBSSessionAttrInfo(jsonData);

The following sample output shows the current user name, current role name, transaction mode, and collation.

{"CurUserName":"TESTUSER","CurRoleName":"R1","TransactionMode":"BTET","Collation":"ASCII"}