Oracle Database
Словарь данных
Поиск…
замечания
Представления словаря данных, также известные как представления каталога, позволяют отслеживать состояние базы данных в режиме реального времени:
Представления, предваряемые USER_
, ALL_
и DBA_
, отображают информацию об объектах схемы, которые принадлежат вам ( USER_
), доступные вам ( ALL_
) или доступны пользователю с привилегией SYSDBA ( DBA_
). Например, в представлении ALL_TABLES
отображаются все таблицы, на которые у вас есть привилегии.
Представления V$
показывают информацию, связанную с производительностью.
Представления _PRIVS
показывают информацию о привилегиях для разных комбинаций пользователей, ролей и объектов.
Документация Oracle: Представления каталога / Словарь данных
Текстовый источник сохраненных объектов
USER_SOURCE
описывает текстовый источник хранимых объектов, принадлежащих текущему пользователю. В этом представлении не отображается столбец OWNER
.
select * from user_source where type='TRIGGER' and lower(text) like '%order%'
ALL_SOURCE
описывает текстовый источник хранимых объектов, доступных для текущего пользователя.
select * from all_source where owner=:owner
DBA_SOURCE
описывает текстовый источник всех сохраненных объектов в базе данных.
select * from dba_source
Получить список всех таблиц в Oracle
select owner, table_name
from all_tables
ALL_TAB_COLUMNS
описывает столбцы таблиц, представлений и кластеров, доступных для текущего пользователя. COLS
является синонимом USER_TAB_COLUMNS
.
select *
from all_tab_columns
where table_name = :tname
Информация о привилегиях
Все роли, предоставленные пользователю.
select *
from dba_role_privs
where grantee= :username
Привилегии, предоставленные пользователю:
- системные привилегии
select *
from dba_sys_privs
where grantee = :username
- объектные гранты
select *
from dba_tab_privs
where grantee = :username
Разрешения на роли.
Роли, предоставленные другим ролям.
select *
from role_role_privs
where role in (select granted_role from dba_role_privs where grantee= :username)
- системные привилегии
select *
from role_sys_privs
where role in (select granted_role from dba_role_privs where grantee= :username)
- объектные гранты
select *
from role_tab_privs
where role in (select granted_role from dba_role_privs where grantee= :username)
Версия Oracle
select *
from v$version
Описывает все объекты в базе данных.
select *
from dba_objects
Чтобы просмотреть все виды словаря данных, к которым у вас есть доступ
select * from dict