在Oracle PL/SQL 可以用CURRENT_TIMESTAMP
或SYSTIMESTAMP
取得現在日期時間。兩者差別如下。
CURRENT_TIMESTAMP
為取得開啟連線(session)所在地的現在時間;SYSTIMESTAMP
為資料庫所在地的現在時間。
例如下面是我本機Oracle SQL Developer連線到AWS上的Oracle DB並使用CURRENT_TIMESTAMP
與SYSTIMESTAMP
的查詢結果。
SELECT CURRENT_TIMESTAMP, SYSTIMESTAMP FROM DUAL;
+---------------------------------------------+-------------------------------------+
| CURRENT_TIMESTAMP | SYSTIMESTAMP |
+---------------------------------------------+-------------------------------------+
| 14-JAN-20 11.30.02.356789000 AM ASIA/TAIPEI | 14-JAN-20 03.30.02.356784000 AM GMT |
+---------------------------------------------+-------------------------------------+
我的位置在台北所以CURRENT_TIMESTAMP
顯示時間為台北時區的時間,
而SYSTIMESTAMP
顯示的時間為AWS DB所在地的時間 (AWS DB預設使用UTC/GMT時間)。
參考:
沒有留言:
張貼留言