how to know whether the library or program is INVOKER or DEFINER In Schema [message #466454] |
Mon, 19 July 2010 14:27 |
leahchow
Messages: 11 Registered: June 2005
|
Junior Member |
|
|
Hello,
Is there any way user can find out whether the object (library or program)is invoker or definer?
the statement I used to check the package or procedure is something like this:
SELECT dbo.object_name,
(DECODE(SIGN(bitand(options,16)),1,'INVOKER','DEFINER')) "authid"
FROM dba_objects dbo,
sys.PROCEDURE$ p
WHERE p.obj# = dbo.object_id
AND dbo.object_type = 'PACAKGE'
AND dbo.object_name = 'object_name'
AND dbo.owner = 'username';
this statement shows me whether it is invoker or definer.
But it doesn't show any information about if the object_type=program or libary.
Do you know how to get these information from oracle database?
thanks a bunch
Leah
|
|
|
|
|
|
|
|
Re: how to know whether the library or program is INVOKER or DEFINER In Schema [message #466654 is a reply to message #466651] |
Tue, 20 July 2010 07:47 |
|
Michel Cadot
Messages: 68728 Registered: March 2007 Location: Saint-Maur, France, https...
|
Senior Member Account Moderator |
|
|
Quote:Not exactly
And then? FUNCTION is not a PL/SQL procedure? Procedure is there as a generic term, like CREATE PROCEDURE privilege it contains ALL PL/SQL procedural objects. This should be understandable when you read the previous messages where we talk about packages.
In addition, your queries do not prove anything as we don't know if you have any object of types PROGRAM or LIBRARY in your database.
It useless to post new queries to prove it, yes, you have, but your previous post did not prove anything. It was just to tell you to take care.
Regards
Michel
[Updated on: Tue, 20 July 2010 07:50] Report message to a moderator
|
|
|