Obtener El Usuario Que Realiza La Operación

Chess
18 de Septiembre del 2003
Buenas. Tengo que introducir en una tabla las operaciones que se realizan sobre una tabla y el usuario que ha realizado la operación. ¿Cómo obtengo el usuario? Estoy trabajando con Oracle 8.i

Carlos
18 de Septiembre del 2003
Utiliza un trigger de BBDD sobre la tabla que quieres auditar.
Con la 8i, no puedes auditar las operaciones de consulta, pero el resto si ( insert,delete, update ).
Si quieres obtener el usuario de base de datos pon esto :

SELECT USER
INTO VARIABLE
FROM DUAL;

y luego lo insertas en la tabla historica.
Si lo que quieres es el usuario del sistema operativo ( asumo que es windows ), utiliza esto :

SELECT SYS_CONTEXT('USERENV','OS_USER')
INTO VARIABLE
FROM DUAL;

Para la operación es obvio :

IF INSERTING THEN.....
...
ELSIF UPDATING THEN
....
ELSE
....
END IF;