2015-02-11 14 views
1

Oracle數據庫是否爲寫入表的每條記錄(行)記錄時間戳? 如果是的話是否有SQL命令來讀取此時間戳?Oracle記錄(行)元數據包括時間戳

我想了解它需要多長時間才能執行寫入數據庫。數據記錄包含測試數據準備寫入數據庫的時間戳。這次的差別會告訴我寫入的時間有多長。注意我不在尋找mS差異,我正在尋找微小差異。

+0

可能的重複[什麼是創建的Oracle表中的日期時間?](http://stackoverflow.com/questions/6571575/whats-the-created-date-time-for-table-row-in -oracle) – 2015-02-11 20:23:20

回答

1

雖然沒有確切的每一行的時間戳,可以使用類似於所謂的SCN的東西,你可以獲取在虛列ORA_ROWSCN 事後將其轉換爲時間戳使用SCN_TO_TIMESTAMP

另外,作爲@SanderstheSoftwarer在評論中說:「該表可以使用ROWDEPENDENCIES選項構建,如果是這樣,scn將被跟蹤每一行」。

+0

如鏈接中所述,默認情況下,ORA_ROWSCN通過塊而不是行跟蹤。 – 2015-02-11 20:57:09

+0

@Shannon你是對的,正如你可以在我的回答中看到的,我並不是假裝針對行級別給出答案,而是給出了一個類似的解決方案,它具有足夠的有用性,因爲OP意圖提供微小的級差而不是ms – jclozano 2015-02-11 21:05:23

+1

@Shannon,這取決於。可以使用ROWDEPENDENCIES選項構建表,如果是這樣,則會爲每一行跟蹤scn。它在內部向表格中添加一個隱藏列,並在每次寫入行時自動更新它。 – 2015-02-11 21:18:19