Ответ 1
SELECT created
FROM dba_objects
WHERE object_name = <<your table name>>
AND owner = <<owner of the table>>
AND object_type = 'TABLE'
сообщит вам, когда была создана таблица (если у вас нет доступа к DBA_OBJECTS, вы можете использовать ALL_OBJECTS вместо того, чтобы иметь привилегии SELECT в таблице).
Общий ответ на получение временных меток из строки состоит в том, что вы можете получать эти данные только в том случае, если вы добавили столбцы для отслеживания этой информации (при условии, конечно, что ваше приложение также заполняет столбцы). Однако существуют различные особые случаи. Если DML произошел относительно недавно (скорее всего, за последние пару часов), вы должны получить метки времени из запроса flashback. Если DML произошел за последние несколько дней (или, как бы долго вы не сохранили ваши архивные журналы), вы можете использовать LogMiner для извлечения временных меток, но это будет очень дорогостоящая операция, особенно если вы получаете временные метки для многих строк. Если вы создадите таблицу с включенными ROWDEPENDENCIES (не по умолчанию), вы можете использовать
SELECT scn_to_timestamp( ora_rowscn ) last_modified_date,
ora_rowscn last_modified_scn,
<<other columns>>
FROM <<your table>>
чтобы получить последнюю дату изменения и SCN (номер изменения системы) для строки. Однако по умолчанию, без ROWDEPENDENCIES, SCN находится только на уровне блока. Функция SCN_TO_TIMESTAMP
также не сможет отображать SCN на временные метки навсегда.