Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.server -> Re: running into problem with package.
SP wrote:
> Sorry I didn't mention my problem. The 'create synonym...' should be
> running instead it's going to error handler. Any idea why it is so?
> SP
> "Frank" <fbortel_at_nescape.net> wrote in message
> news:brvejc$u56$1_at_news4.tilbu1.nb.home.nl...
>
>>SP wrote: >> >> >>>Hi all, >>>I'll explain this first. First, synonym STATUS for userA is dropped if
>>>exists for that user otherwise will go to exception handler. After the >>>first drop statement there shouldn't be any synonym named 'STATUS' owned
>>>userA. But on execution they both are being handled by exception
>>>But when I run seperately they run just fine. It's not the permission
>>>as this statement is being run by a account with DBA privilege and when
>>>statements are run seperately (not from inside package) they just run
>>>Any help would be appreciated. >>>TIA, >>>SP >>> >>>CREATE OR REPLACE PACKAGE TEST_Utilities >>>AS >>>PROCEDURE SwitchToSourceA; >>>END TEST_Utilities; >>>/ >>>CREATE OR REPLACE PACKAGE BODY TEST_Utilities IS >>>PROCEDURE SwitchToSourceA IS >>>BEGIN >>> BEGIN EXECUTE IMMEDIATE ('DROP SYNONYM userA.STATUS'); EXCEPTION
>>>OTHERS THEN NULL; END; >>> BEGIN EXECUTE IMMEDIATE ('CREATE SYNONYM userA.STATUS FOR >>>userB.STATUS'); EXCEPTION WHEN OTHERS THEN NULL; END; >>>END SwitchToSourceA; >>> >>>END; >>>/ >>> >>> >> >>What is the problem? >> >>-- >>Merry Christmas and a Happy New Year, >>Frank van Bortel >>
Yup - roles... As Michel said
You have to grant 'create any synonym' directlty to the
user (if using invoker's rights) or the owner of the proc
(when using owner rights - the default)
-- Merry Christmas and a Happy New Year, Frank van BortelReceived on Sat Dec 20 2003 - 08:21:14 CST