Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.misc -> PLS-00201 identifier 'SYS.V_$SESSION' must be declared

PLS-00201 identifier 'SYS.V_$SESSION' must be declared

From: Joan M. Wohleber <joanwohl_at_hotmail.com>
Date: Fri, 11 Jan 2002 16:53:00 -0500
Message-ID: <a1nmq5$e9c$1@plonk.apk.net>


I cannot compile a procedure that selects from v$session. I am getting error PLS-00201 identifier 'SYS.V_$SESSION' must be declared. V$SESSION is a valid synonym for SYS.V_$SESSION. I can select from V$SESSION in SQL Plus, but not from within a procedure. Supposedly, my role has select permission on ALL tables.
1) How can I verify my table permissions? 2) What else could be causing this error?

If I use the EXECUTE IMMEDIATE statement to run dynamic sql (see below) that selects from SYS.V_$SESSION, the procedure compiles, but I receive error message ORA-00942: table or view does not exist.

CREATE OR REPLACE PROCEDURE jsession (p_in IN NUMBER, p_out OUT VARCHAR2) IS

   v_sql VARCHAR2(2000);
BEGIN
   v_sql := 'SELECT username FROM sys.v_$session WHERE sid = ' || p_in;    EXECUTE IMMEDIATE v_sql INTO p_out;
END;
/
Thanks for any assistance. JW Received on Fri Jan 11 2002 - 15:53:00 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US