Получить последнее время DDL для таблицы Oracle в другой схеме - PullRequest
8 голосов
/ 27 июня 2011

Я пытаюсь найти время последнего оператора DDL, который был применен к таблице.

Я нашел это решение:

Select OBJECT_NAME, LAST_DDL_TIME
From user_objects
Where OBJECT_NAME='MY_TABLE'

Проблема в том, что я хочу проверить это для таблицы, которая не принадлежит моей Схеме.

Любое предложение, пожалуйста

1 Ответ

15 голосов
/ 27 июня 2011

Если у вас есть разрешения, вам просто нужно запросить представление ALL_OBJECTS или DBA_OBJECTS, т.е.

SELECT object_name, object_type, last_ddl_time
  FROM dba_objects (or all_objects)
 WHERE owner = <<owner of table>>
   AND object_name = 'MY_TABLE'

ALL_OBJECTS содержит информацию обо всех объектах, на которые у вас есть привилегии (т. Е. Таблицы, из которых вы можете по крайней мере выбрать) DBA_OBJECTS содержит информацию обо всех объектах в базе данных, независимо от того, имеете ли вы разрешение на доступ к ним или нет. Однако доступ к представлению DBA_OBJECTS требует дополнительных привилегий.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...