>  SYSDBA users can see other connected users using monitoring tables 
> but is it possible to implement such feature for non-SYSDBA users? Are 
> there event/triggers that act uppon connecting and disconnecting and 
> which can insert usual database records. Triggers no MON$ tables are 
> not suitable because MON$ tables are populated only during query time.

Yes, you can use database level on connect/on disconnect triggers. E.g.

CREATE TABLE CONNECTED_USERS (
   ID INTEGER,
   USERNAME VARCHAR(32));

GRANT SELECT ON CONNECTED_USERS TO PUBLIC;

SET TERM ^;
CREATE TRIGGER TR_ON_CONNECT ON CONNECT AS
BEGIN
   INSERT INTO CONNECTED_USERS(ID, USERNAME) VALUES (CURRENT_CONNECTION, 
CURRENT_USER);
END^
CREATE TRIGGER TR_ON_DISCONNECT ON DISCONNECT AS
BEGIN
   DELETE FROM CONNECTED_USERS WHERE ID=CURRENT_CONNECTION;
END^
SET TERM ;^

I.

Reply via email to