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

Home -> Community -> Usenet -> c.d.o.tools -> Re: Can't create view

Re: Can't create view

From: <catherine_devlin_at_purpleturtle.com>
Date: 29 May 2001 15:38:38 GMT
Message-ID: <9f0fpu$5ok$1@news.netmar.com>

Your discovery is correct, and it matches with the official lore.

I quote from Koch & Loney, _Oracle 8: The Complete Reference_:

NOTE
Priveleges that are granted to users via roles cannot be used as the basis for views,
procedures, functions, packages, or foreign keys. When creating these types of database objects, you must rely on direct grants of the necessary priveleges.

In other words, roles have never really been implemented in Oracle; only a sort of shadow "role" that works just well enough to fool us into using it, then lets us down when we try to do anything interesting with it.

Why? I have no idea. If there is any explanation other than "lazy programmers", I would be interested in knowing it.

Sorry this doesn't help...
- Catherine

In article <9et3v6$pta$1_at_news.uni-leipzig.de>, Jan Schaefer <schaefer_at_kksl.uni-leipzig.de> writes:
>I've created a table and granted SELECT to a user. After this the user was
>able to create a view basing on my table in his schema.
>
>Then I granted SELECT to a role and granted the role to the user after
>revoking the direct SELECT grant. Now the user was unable to create the same
>view on my table. Oracle gives a error message that states: ORA-00942: Table
>or View does not exist. But the SELECT statement that creates the view still
>works.
>
>Does anybody know why it's not possible to create the view only with SELECT
>rights over a role?
>
>Thanks in advance,
>
>Jan
>
>

Received on Tue May 29 2001 - 10:38:38 CDT

Original text of this message

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