2015-02-11 3 views
1

Имеет ли база данных Oracle временную метку для каждой записи (строки), записанной в таблицу? Если это так, команда SQL для чтения этой метки времени?Метаданные записи Oracle (строки) включают временную отметку

Я пытаюсь выяснить, сколько времени требуется, чтобы выполнить запись в базу данных. Запись данных содержит отметку времени, когда тестовые данные были готовы к записи в базу данных. Разница этого времени подскажет мне, сколько времени занимает запись. Примечание. Я не ищу различия в mS. Я смотрю на небольшие различия.

+0

Возможный дубликат [Что такое созданная дата-время для строки таблицы в Oracle?] (Http://stackoverflow.com/questions/6571575/whats-the-created-date-time-for-table-row-in -oracle) –

ответ

1

Хотя не совсем метку времени для каждой строки, вы можете использовать что-то подобное с именем SCN, вы можете получить, что в псевдостолбец ORA_ROWSCN , а затем преобразовать его в метку времени с помощью SCN_TO_TIMESTAMP

Кроме того, как @SanderstheSoftwarer говорится в комментариях: «таблица может быть построена с параметром ROWDEPENDENCIES, и если это так, scn будет отслеживаться для каждой строки».

+0

Как указано в ссылке, по умолчанию ORA_ROWSCN отслеживается блоком not row. –

+0

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

+1

@ Шоннон, все зависит. Таблица может быть построена с параметром ROWDEPENDENCIES, и если да, scn будет отслеживаться для каждой строки. Внутри он добавляет скрытый столбец в таблицу и автоматически обновляет его каждый раз при написании строки. –

Смежные вопросы