Skip to Main Content

SQL & PL/SQL

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Pls-00201: Identifier Must Be Declared, grant problem

429033Aug 20 2001 — edited Sep 8 2004
I have created a package with functions.
I use toad to run those functions. If i log into database with a account with plenty of privileges then i can execute those functions with no problem.
But now i created a new role and a new user into this role. And with new user i can see all the tables and i see package name and functions, but i can't execute a function inside a package.
If i execute under new user the following:

declare
TYPE curRecords IS REF CURSOR;
parOutRecords1 curRecords;
begin
main_actions.TestFunc (parOutRecords1);
end;

Then i get:
"PLS-00201: identifier 'main_actions.TestFunc' must be declared".

I have created a role 'WriterRole' with the following execute permission:

grant execute on main_actions to WriterRole;
GRANT WriterRole TO "MyUser";

if i execute
grant execute on "main_actions.TestFunc" to MyUser;
i get an error.


How can i grant a user to execute a package procedure?

Regards,
Charles
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Oct 6 2004
Added on Aug 20 2001
1 comment
1,534 views