## Syntax
```mermaid
%%{init: {
'theme': 'base',
'flowchart': { 'padding': '7', 'nodeSpacing': '20', 'rankSpacing': '20' },
'themeVariables': {
'fontSize': '11px',
'fontFamily': 'Arial'
}
}}%%
flowchart LR
Start((START)) --> alterSessionStatement
alterSessionStatement -->| | alterSessionSetStatement
alterSessionSetStatement --> End((END))
```
## Purpose
Various statement to alter properties of the current Invantive UniversalSQL session.
## alterSessionSetStatement
```mermaid
%%{init: {
'theme': 'base',
'flowchart': { 'padding': '7', 'nodeSpacing': '20', 'rankSpacing': '20' },
'themeVariables': {
'fontSize': '11px',
'fontFamily': 'Arial'
}
}}%%
flowchart TD
alterSessionSetStatement_start((START))
alterSessionSetStatement_start --> alterSessionSetStatement_0_0[ALTER]:::quoted
alterSessionSetStatement_0_0 --> alterSessionSetStatement_0_1[SESSION]:::quoted
alterSessionSetStatement_0_1 --> alterSessionSetStatement_0_2[SET]:::quoted
alterSessionSetStatement_0_2 --> alterSessionSetStatement_0_3[alterSessionSetBillingId]
alterSessionSetStatement_0_3 --> alterSessionSetStatement_0_4[alterSessionSetBillingReference]
alterSessionSetStatement_0_4 --> alterSessionSetStatement_0_5[alterSessionSetIuidSourceAlias]
alterSessionSetStatement_0_5 --> alterSessionSetStatement_0_6[alterSessionSetRoles]
alterSessionSetStatement_0_6 --> alterSessionSetStatement_end((END))
```
## Purpose
Change properties of the current Invantive UniversalSQL session.
## alterSessionSetBillingId
```mermaid
%%{init: {
'theme': 'base',
'flowchart': { 'padding': '7', 'nodeSpacing': '20', 'rankSpacing': '20' },
'themeVariables': {
'fontSize': '11px',
'fontFamily': 'Arial'
}
}}%%
flowchart LR
alterSessionSetBillingId_start((START))
alterSessionSetBillingId_start --> alterSessionSetBillingId_0_0[BILLING]:::quoted
alterSessionSetBillingId_0_0 --> alterSessionSetBillingId_0_1[ID]:::quoted
alterSessionSetBillingId_0_1 --> alterSessionSetBillingId_0_2[expression]
alterSessionSetBillingId_0_2 --> alterSessionSetBillingId_end((END))
```
## Purpose
Change the ID used for to charge usage to another agreement as specified in the license. Used solely for hosted use of Invantive products to associate usage statistics on data downloaded, data uploaded, users, devices and partitions use with individual billing IDs. Original agreement code is also registered.
## alterSessionSetBillingReference
```mermaid
%%{init: {
'theme': 'base',
'flowchart': { 'padding': '7', 'nodeSpacing': '20', 'rankSpacing': '20' },
'themeVariables': {
'fontSize': '11px',
'fontFamily': 'Arial'
}
}}%%
flowchart LR
alterSessionSetBillingReference_start((START))
alterSessionSetBillingReference_start --> alterSessionSetBillingReference_0_0[BILLING]:::quoted
alterSessionSetBillingReference_0_0 --> alterSessionSetBillingReference_0_1[REFERENCE]:::quoted
alterSessionSetBillingReference_0_1 --> alterSessionSetBillingReference_0_2[expression]
alterSessionSetBillingReference_0_2 --> alterSessionSetBillingReference_end((END))
```
## Purpose
Add a reference to billing to differentiate use within one agreement depending on application. department or operating company. Typically used for use of Invantive products by larger organizations to associate usage statistics on data downloaded, data uploaded, users, devices and partitions use with individual billing references.
## alterSessionSetIuidSourceAlias
```mermaid
%%{init: {
'theme': 'base',
'flowchart': { 'padding': '7', 'nodeSpacing': '20', 'rankSpacing': '20' },
'themeVariables': {
'fontSize': '11px',
'fontFamily': 'Arial'
}
}}%%
flowchart LR
alterSessionSetIuidSourceAlias_start((START))
alterSessionSetIuidSourceAlias_start --> alterSessionSetIuidSourceAlias_0_0[IUID]:::quoted
alterSessionSetIuidSourceAlias_0_0 --> alterSessionSetIuidSourceAlias_0_1[SOURCE]:::quoted
alterSessionSetIuidSourceAlias_0_1 --> alterSessionSetIuidSourceAlias_0_2[expression]
alterSessionSetIuidSourceAlias_0_2 --> alterSessionSetIuidSourceAlias_end((END))
```
## Purpose
Use a non-default data container to determine the IUID (Invantive User ID) value used for identifying the user. Typically used when the actual user is available in a user directory of a higher-numbered data container.
## alterSessionSetRoles
```mermaid
%%{init: {
'theme': 'base',
'flowchart': { 'padding': '7', 'nodeSpacing': '20', 'rankSpacing': '20' },
'themeVariables': {
'fontSize': '11px',
'fontFamily': 'Arial'
}
}}%%
flowchart LR
alterSessionSetRoles_start((START))
alterSessionSetRoles_start --> alterSessionSetRoles_0_0[ROLES]:::quoted
alterSessionSetRoles_0_0 --> alterSessionSetRoles_0_1[DEFAULT]:::quoted
alterSessionSetRoles_0_1 --> alterSessionSetRoles_0_2[roleIdentifier]
alterSessionSetRoles_0_2 --> alterSessionSetRoles_0_3[","]:::quoted
alterSessionSetRoles_0_3 --> alterSessionSetRoles_0_4[roleIdentifier]
alterSessionSetRoles_0_4 --> alterSessionSetRoles_end((END))
```
## Purpose
Invantive UniversalSQL offers advanced security features including row-level security with custom connectors. Sets the active roles of a session.