My Oracle Support Banner

ORA-01031 SELECT ANY DICTIONARY System Privilege Granted Through Role Does Not Allow View Creation (Doc ID 342489.1)

Last updated on JULY 02, 2021

Applies to:

Oracle Database Cloud Schema Service - Version N/A and later
Gen 1 Exadata Cloud at Customer (Oracle Exadata Database Cloud Machine) - Version N/A and later
Oracle Cloud Infrastructure - Database Service - Version N/A and later
Oracle Database Backup Service - Version N/A and later
Oracle Database Exadata Express Cloud Service - Version N/A and later
Information in this document applies to any platform.
Checked for relevance on 08-Sep-2010


Symptoms

NOTE: In the images and/or the document content below, the user information and data used represents fictitious data from the Oracle sample schema(s) or Public Documentation delivered with an Oracle database product. Any similarity to actual persons, living or dead, is purely coincidental and not intended in any manner. 

The system privilege SELECT ANY DICTIONARY  is granted to USER1 through DBA role.

USER1 attempts to create a view based upon SYS.OBJ$ table, but fails with ORA-1031 error :

SQL> create user USER1 identified by xxxxx;
User created.
SQL> grant dba to USER1;
Grant succeeded.

SQL> connect USER1/xxxxx
Connected.

SQL> create or replace view zz as select * from sys.obj$;

create or replace view zz as select * from sys.obj$
                                                   *
ERROR at line 1:
ORA-01031: insufficient privileges

Changes

 

Cause

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
Symptoms
Changes
Cause
Solution
References

My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.