Summary of OLAP_API_SESSION_INIT Subprograms

The following table describes the subprograms provided in OLAP_API_SESSION_INIT.

Table C-2 OLAP_API_SESSION_INIT Subprograms

Subprogram Description

ADD_ALTER_SESSION Procedure

Specifies an ALTER SESSION parameter for OLAP API users with a particular database role.

CLEAN_ALTER_SESSION Procedure

Removes orphaned data, that is, any ALTER SESSION parameters for roles that are no longer defined in the database.

DELETE_ALTER_SESSION Procedure

Removes a previously defined ALTER SESSION parameter for OLAP API users with a particular database role.



ADD_ALTER_SESSION Procedure

This procedure specifies an ALTER SESSION parameter for OLAP API users with a particular database role. It adds a row to the OLAP$ALTER_SESSION table.

Syntax

ADD_ALTER_SESSION (
     role_name           IN     VARCHAR2,
     session_parameter   IN     VARCHAR2);

Parameters

The role_name and session_parameter are added as a row in OLAP$ALTER_SESSION.

Table C-3 ADD_ALTER_SESSION Procedure Parameters

Parameter Description

role_name

The name of a valid role in the database. Required.

session_parameter

A parameter that can be set with a SQL ALTER SESSION command. Required.


Example

The following example inserts a row in OLAP$ALTER_SESSION that turns on query rewrite for users with the OLAP_DBA role.

EXECUTE olap_api_session_init.add_alter_session('OLAP_DBA', 
     'SET QUERY_REWRITE_ENABLED=TRUE');
Row inserted
 
SELECT * FROM all_olap_alter_session WHERE role='OLAP_DBA';
 
ROLE         CLAUSE_TEXT
------------ ------------------------------------------------------------
OLAP_DBA     ALTER SESSION SET QUERY_REWRITE_ENABLED=TRUE

CLEAN_ALTER_SESSION Procedure

This procedure removes all ALTER SESSION parameters for any role that is not currently defined in the database. It removes all orphaned rows in the OLAP$ALTER_SESSION table for those roles.

Syntax

CLEAN_ALTER_SESSION ();

Example

The following example deletes all orphaned rows.

EXECUTE olap_api_session_init.clean_alter_session();

DELETE_ALTER_SESSION Procedure

This procedure removes a previously defined ALTER SESSION parameter for OLAP API users with a particular database role. It deletes a row from the OLAP$ALTER_SESSION table.

Syntax

DELETE_ALTER_SESSION (
     role_name           IN     VARCHAR2,
     session_parameter   IN     VARCHAR2);

Parameters

The role_name and session_parameter together uniquely identify a row in OLAP$ALTER_SESSION.

Table C-4 DELETE_ALTER_SESSION Procedure Parameters

Parameter Description

role_name

The name of a valid role in the database. Required.

session_parameter

A parameter that can be set with a SQL ALTER SESSION command. Required.


Examples

The following call deletes a row in OLAP$ALTER_SESSION that contains a value of OLAP_DBA in the first column and QUERY_REWRITE_ENABLED=TRUE in the second column.

EXECUTE olap_api_session_init.delete_alter_session('OLAP_DBA', 
     'SET QUERY_REWRITE_ENABLED=TRUE');
 
SELECT * FROM all_olap_alter_session WHERE role='OLAP_DBA';
 
no rows selected