![]() Previous |
![]() Next |
The Oracle data dictionary is a set of database tables that provides information about the database. A data dictionary has the following contents:
The names of Oracle Database users
Privileges and roles granted to each user
The definitions of all schema objects in the database (tables, views, indexes, clusters, synonyms, sequences, procedures, functions, packages, triggers, and so on)
The amount of space allocated for, and is currently used by, the schema objects
Default values for columns
Integrity constraint information
Auditing information, such as who has accessed or updated various schema objects
Other general database information
The data dictionary tables and views for a given database are stored in the SYSTEM tablespace for that database. All the data dictionary tables and views for a given database are owned by the user SYS. Connecting to the database with the SYSDBA privilege gives full access to the data dictionary. Oracle strongly recommends limiting access to the SYSDBA privilege to only those operations necessary such as patching and other administrative operations. The data dictionary is central to every Oracle database.
You can view the contents of the data dictionary by querying data dictionary views, which are described in Oracle Database Reference. Be aware that not all objects in the data dictionary are exposed to users. A subset of data dictionary objects, such as those beginning with USER_% are exposed as read only to all database users.
Example: Finding Views That Pertain to the Data Dictionary shows how you can find a list of database views specific to the data dictionary by querying the DICTIONARY view.
Finding Views That Pertain to the Data Dictionary
sqlplus system
Enter password: password
SQL> SELECT TABLE_NAME FROM DICTIONARY;