Um pouco sobre Dicionário de dados Oracle Database
O dicionário é um conjunto de tables e views (ambas read-only) que contém diversas informações que podem nos ajudar na administração e em diversas tarefas.
Contém informações como:
- Informações sobre usuários, privilégios e roles.
- Informações sobre datafiles.
- Objetos de schema
- E outras informações.
As tabelas base do dicionário só sofrem escrita pelo próprio Oracle Database.
As views são organizados em grupos, onde um usuário só pode acessar o que for permitido a ele, confira os grupos na imagem abaixo:
Para ver como as tabelas estão no dicionário execute a seguinte query:
SELECT d.TABLE_NAME, d.COMMENTS FROM DICTIONARY D;
E temos várias que nos ajudam muito, vou citar algumas:
user_tab_columns – traz informações sobre as colunas das tabelas do usuário.
user_tables – Traz informações sobre as tabelas de um usuário.
user_triggers, user_procedures, user_scheduler_jobs e várias outras quem também podem ser usadas em outros grupos que estão na imagem acima (ex: dba_tab_columns, dba_tables).Outra questão relevante são as dynamic performace views que são views constantemente atualizadas quando o banco está em uso. Essas views também são chamadas de V$ views, elas não podem ser removidas ou alteradas pelo DBA.
Obs: todas as views V$ são sinônimos de views V_$ (que tem como owner o user SYS).São muito usadas pois trazem informações muito relevantes, como a view V$SESSION, V$DATAFILE, V$INSTANCE e outras. A V$FIXED_TABLE contém informações sobre todas essas views.Vale a pena executar um SELECT nas views expostas aqui e conferir o quanto podem ser utéis no dia-a-dia.
Grande abraço!!
Fontes