При установке по умолчанию я не знаю способа надежно получить эту информацию. Возможно, вам удастся перехватить операторы SQL, которые недавно выполнялись в представлениях v $ sql *, но представления v $ sql * носят временный характер и используются для поддержки обычных операций базы данных. Заявления могут устареть, так что это не надежный способ аудита.
Какой надежный способ получить эту информацию? Oracle Auditing. Он содержит возможность записывать детализированную информацию о том, как касаются объекты вашей базы данных.
В этом случае вы захотите изучить AUDIT SELECT. После выполнения базовой конфигурации для аудита (обычно выполняемого администратором базы данных), аудит SELECT может быть настроен для определенных таблиц, таких как:
АУДИТ ВЫБРАТЬ НА сотрудников;
Когда пользователь ВЫБИРАЕТ от сотрудника, напрямую или через представление, запись будет записана в контрольный журнал (текстовый файл или SYS.AUD $ в зависимости от конфигурации). Журнал будет содержать имя пользователя, временную метку, имя_таблицы и некоторую другую информацию, которая поможет вам определить, что пользователь делал в то время.
Вот справочник 9i для аудита, который дает обзор, включая информацию о AUDIT SELECT: http://download.oracle.com/docs/cd/B10500_01/server.920/a96524/c25audit.htm
Имейте в виду, что мелкозернистый одитинг может замедлить процесс. Что бы вы ни проверяли, теперь есть новый уровень активности, который необходимо выполнить (запись в журнал аудита). Если у вас есть бизнес, вам нужно знать, кто видит, какие данные понятны, но не забывайте о влиянии на производительность.