Contexto APEX$SESSION

Autor

Eddie Molina

Publicado el

01/20/2020
d

Categorías

A partir de la versión 5.0 de APEX, se creo un nuevo contexto de aplicación: APEX$SESSION, el cual almacena nombre de usuario, identificador de sesión e identificador de espacio de trabajo. Esta información se puede utilizar para filtrar información, al igual que lo hacemos por ejemplo con la función V, sin embargo, el uso de este contexto ejecuta las consultas mucho más rápido que la función V.

APEX define el contexto APEX$SESSION cuando comienza a procesar una solicitud entrante. Por ejemplo, puede utilizar cualquiera de sus tres valores para filtrar consultas y para políticas de VPD (Bases de datos Vituales Privadas) que protegen sus datos en tablas.

Como se mencionó, este contexto «guarda» tres valores diferentes: APP_SESSION, APP_USER y WORKSPACE_ID. A continuación tres ejemplos de posibles usos de estos valores, utilizando cada uno de estos valores del contexto.

SELECT … WHERE apex_session_id = SYS_CONTEXT(‘APEX$SESSION’, ‘APP_SESSION’)

SELECT … WHERE username = SYS_CONTEXT(‘APEX$SESSION’, ‘APP_USER’)

SELECT … WHERE workspace_id = SYS_CONTEXT(‘APEX$SESSION’, ‘WORKSPACE_ID’)

Puede leer sobre las diferencias de rendimiento con respecto a la función V en el post de Srihari Ravva «Oracle APEX SYS_CONTEXT vs V Function«

Artículos Relacionados

APEX 26.1 Nuevas APIs

APEX 26.1 Nuevas APIs

Continuemos conociendo un poco más de las cosas nuevas que trae la versión 26.1 de Oracle Application Express. En esta oportunidad quiero dar un vistazo a las nuevas APIs que forman parte de esta versión, la cual incluye dos nuevas APIs: APEX_DB_DICTIONARY...

0 comentarios

Share This