ORACLE資料庫中SCN與時間的轉換
10g中提供了兩個函式scn_to_timestamp()和timestamp_to_scn()用來執行時間戳和SCN的轉換,例如:
例如:
JSSPRE> select timestamp_to_scn(sysdate) from dual;
TIMESTAMP_TO_SCN(SYSDATE)
-------------------------
1263291
JSSPRE> select scn_to_timestamp(1263291) from dual;
SCN_TO_TIMESTAMP(1263291)---------------------------------------------------------------------------
02-JUN-09 10.12.28.000000000 AM
不過在之前的版本中並沒有提供這樣的函式,而是通過一個系統物件SYS.SMON_SCN_TIME來提供SCN和時間的對映資訊。
在10g之前版本,SYS.SMON_SCN_TIME最多擁有1440條記錄。這個最大記錄數是這樣計算出來的,ORACLE平均每5分鐘同步一次該表資料,最大儲存最近5天的記錄,因此就相當於12(每小時更新次數)*24*5=1440。
SCN資訊在該系統物件中儲存於SCN_WRP(SCN_WRAP)和SCN_BAS(SCN_BASE)兩列中,當資料SCN增長時,首先是BASE部分自增,如果BASE部分達到上限,則初始化為0,然後WRAP部分自增1。
明白這個邏輯,我們就可以通過對SYS.SMON_SCN_TIME計算,來執行時間和日期的轉換。
例如,有scn如下:
JSSPRE> select max(scn_bas) from sys.smon_scn_time;
MAX(SCN_BAS)
------------
1269168
查詢該SCN對應的時間,則可以通過下列的方式:
JSSPRE> select time_dp,scn_wrp*65535*65535+scn_bas scn from sys.smon_scn_time
2 where scn_bas='1269168';
------------------- ----------
2009-06-02 13:47:20 1269168
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7607759/viewspace-605632/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle資料庫中的多種SCN彙總Oracle資料庫
- Oracle資料庫日期格式轉換操作Oracle資料庫
- Oracle DG資料庫狀態轉換Oracle資料庫
- 掌握時間與空間:深入探討Golang中的時間戳與時區轉換Golang時間戳
- Excel中時間戳轉換時間Excel時間戳
- python中的時間轉換,秒級時間戳轉string,string轉時間Python時間戳
- 時間戳與時間字串的多時區轉換時間戳字串
- 關於Oracle資料庫的時間查詢Oracle資料庫
- SpringMVC的亂碼與時間轉換SpringMVC
- Oracle_SQL部分_時間轉換(案例一)OracleSQL
- Oracle時間資訊特性(轉)Oracle
- mysql時間與字串之間相互轉換MySql字串
- 資料庫轉換工具,不同資料庫之前任意轉換資料庫
- 時間轉換
- [時間格式的轉換]
- golang日期字串與時間戳轉換Golang字串時間戳
- js時間戳與日期格式的相互轉換JS時間戳
- [20201106]瞭解oracle資料庫啟動時間.txtOracle資料庫
- Java中Array與ArrayList之間的轉換Java
- 清理oracle資料庫空間Oracle資料庫
- BBED 修改oracle 資料檔案的 SCN 號來做資料庫不完全恢復。Oracle資料庫
- Oracle資料庫中convert()函式,在瀚高資料庫中如何替換使用?Oracle資料庫函式
- [轉] Oracle資料庫中建立表時怎樣考慮列順序Oracle資料庫
- 透過修改控制檔案scn推進資料庫scn資料庫
- Oracle 資料庫 10g中的分割槽功能(轉)Oracle資料庫
- 遷移Oracle資料庫時如何減小停機時間AAOracle資料庫
- Oracle:SCNOracle
- 時間相減和時間轉換
- ORACLE資料庫基於時間點的不完全恢復Oracle資料庫
- oracle資料庫與oracle例項Oracle資料庫
- 7.GoLang中基本資料型別之間的轉換Golang資料型別
- js資料型別間的互相轉換JS資料型別
- oracle資料隱式轉換規則Oracle
- 【Java】基本資料、包裝類間轉換與處理Java
- [Java] 基本資料、包裝類間轉換與處理Java
- 如何處理Oracle資料庫中的壞塊問題(轉)Oracle資料庫
- SQL Server資料庫中的資料型別隱式轉換問題SQLServer資料庫資料型別
- Goland 時間轉換的那些事GoLand
- Java之時間轉換Java