поиск в истории всех таблиц, созданных пользователем - PullRequest
0 голосов
/ 28 марта 2012

Я новичок в мире Oracle / SQL, и я знаю, как найти ответ, самостоятельно ища и снова ища ... но для моей новой проблемы я не найду хорошего ответа, поэтому я просто хочучтобы найти историю манипулирования базой данных, отфильтровав пользователя, который создал последние таблицы, что это за таблицы, когда он их создал и т. д. Это sql oracle

Я использую oracle XE, а клиент - жаба.

я пробую это с

select table_name from sys.dba_tables where owner='system' 

, но не отображаю таблицы, которые я создал с системным пользователем несколько месяцев назад., И теперь я забываю, какие таблицы я создал.

Ответы [ 2 ]

2 голосов
/ 28 марта 2012

При сопоставлении строк учитывается регистр, и большинство вещей в словаре данных хранятся в верхнем регистре как общее правило. Таким образом, ваш пример запроса должен вернуть несколько строк, если вы измените литерал на верхний регистр:

select table_name from sys.dba_tables where owner='SYSTEM'

Если вы хотите просмотреть недавно созданные таблицы, вам нужно объединить их с dba_objects и использовать там столбец created для фильтрации или сортировки.

Конечно, если вы действительно хотите видеть таблицы для схемы, в которую вы вошли в данный момент, user_tables - лучший вариант для запроса.

Для вашего комментария, вот как получить время последнего изменения для каждой таблицы:

select table_name, last_ddl_time
  from dba_tables t
       join dba_objects o
         on o.object_name=t.table_name and o.object_type='TABLE' and o.owner = t.owner
  where t.owner='SYSTEM'
    and last_ddl_time >= date '2011-01-02'
    and last_ddl_time <  date '2011-01-10'

(Обратите внимание, что «измененный» означает изменение определения таблицы, а не данных, которые она содержит.)

0 голосов
/ 28 марта 2012

Попробуйте выполнить одно из следующих действий:

select * from tab;

или

select * from user_tables;

Оба предоставят список таблиц, созданных пользователем (вами).

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