當前位置:首頁 » 操作系統 » oracle資料庫日期格式

oracle資料庫日期格式

發布時間: 2023-07-23 09:00:51

㈠ Oracle基本數據類型存儲格式淺析—日期類型(3)

對於公元前的日期 Oracle從 開始保存 公元前的年的保存的值和對應的公元後的年的值相加的和是 如上例中的公元 年和公元前 年的值相加 + = + =

SQL中DATE類型最後還包括一個 似乎目前沒有使用

SQL> CREATE TABLE TEST_TIMESTAMP(TIME TIMESTAMP( ) TIME TIMESTAMP( ) WITH LOCAL TIME ZONE TIME TIMESTAMP( ) WITH TIME ZONE);

表已創建

SQL> INSERT INTO TEST_TIMESTAMP VALUES (SYSTIMESTAMP SYSTIMESTAMP SYSTIMESTAMP);

已創建 行

SQL> SELECT * FROM TEST_TIMESTAMP;

TIME TIME TIME 月 下午 月 下午 月 下午 + :

SQL> SELECT DUMP(TIME ) DUMP(TIME ) DUMP(TIME ) FROM TEST_TIMESTAMP;

DUMP(TIME ) DUMP(TIME ) DUMP(TIME ) Typ= Len= : b b fc c Typ= Len= : b b fc c Typ= Len= : b b fc c c c

可以發現 如果客戶端和資料庫中的時區是一致的 那麼TIMESTAMP和TIMESTAMP WITH LOCAL TIME ZONE存儲的數據是完全一樣的

TIMESTAMP WITH TIME ZONE則略有不同 它保存的是 時區的時間 和所處的時區信息

修改客戶端主機的時區 由東 區(+ 區)改為 時區

SQL> INSERT INTO TEST_TIMESTAMP VALUES (SYSTIMESTAMP SYSTIMESTAMP SYSTIMESTAMP);

已創建 行

修改客戶端主機的時區 改為西 區( 時區)

SQL> INSERT INTO TEST_TIMESTAMP VALUES (SYSTIMESTAMP SYSTIMESTAMP SYSTIMESTAMP);

已創建 行

修改客戶端主機的時區 改為西 區( 時區)

SQL> INSERT INTO TEST_TIMESTAMP VALUES (SYSTIMESTAMP SYSTIMESTAMP SYSTIMESTAMP);

已創建 行

修改客戶端主機的時區 改為東 區(+ 時區)

SQL> INSERT INTO TEST_TIMESTAMP VALUES (SYSTIMESTAMP SYSTIMESTAMP SYSTIMESTAMP);

已創建 行

修改客戶端主機的時區 改為西 區( 時區)

SQL> INSERT INTO TEST_TIMESTAMP VALUES (SYSTIMESTAMP SYSTIMESTAMP SYSTIMESTAMP);

已創建 行

修改客戶端主機的時區 改為東 區(+ 時區)

SQL> INSERT INTO TEST_TIMESTAMP VALUES (SYSTIMESTAMP SYSTIMESTAMP SYSTIMESTAMP);

已創建 行

SQL> MIT;

提交完成

修改客戶端主機的時區 改回東 區(+ 時區)

SQL> SELECT * FROM TEST_TIMESTAMP;

TIME TIME TIME 月 下午 月 下午 月 下午 + :

月 下午 月 下午 月 下午 + :

月 上午 月 下午 月 上午 :

月 上午 月 下午 月 上午 :

月 上午 月 下午 月 上午 + :

月 下午 月 上午 月 下午 :

月 上午 月 上午 月 上午 + :

已選擇 行

SQL> SELECT DUMP(TIME ) DUMP(TIME ) DUMP(TIME ) FROM TEST_TIMESTAMP;

DUMP(TIME ) DUMP(TIME ) DUMP(TIME ) Typ= Len= : b b fc c Typ= Len= : b b fc c Typ= Len= : b b fc c c c

Typ= Len= : b c c c e Typ= Len= : b c c c e Typ= Len= : b c c c e c

Typ= Len= : b b f a d c c Typ= Len= : b f a d c c Typ= Len= : b f a d c c f c

Typ= Len= : b b a f Typ= Len= : b b a f Typ= Len= : b b a f c

Typ= Len= : c f d Typ= Len= : b f d Typ= Len= : b f d c

Typ= Len= : b f cb bb c Typ= Len= : c e cb bb c Typ= Len= : b e cb bb c e

Typ= Len= : c b b Typ= Len= : c f b b Typ= Len= : b f b b d a

SQL> SELECT TO_NUMBER( C XXX ) TO_NUMBER( C XXX ) FROM DUAL;

TO_NUMBER( C XXX ) TO_NUMBER( C XXX )

SQL> SELECT TO_NUMBER( XXX ) TO_NUMBER( C XXX ) TO_NUMBER( C XXXXXXX ) FROM DUAL;

TO_NUMBER( XXX ) TO_NUMBER( C XXX )

SQL> SELECT TO_NUMBER( C XXX ) TO_NUMBER( E XXX ) TO_NUMBER( A XXX ) FROM DUAL;

TO_NUMBER( C XXX ) TO_NUMBER( E XXX ) TO_NUMBER( A XXX )

可以看出 修改時區會導致系統TIMESTAMP時間發生變化 但是對於TIMESTAMP WITH LOCAL TIME ZONE類型 總是將系統的時間轉化到資料庫伺服器上時區的時間進行存儲

TIMESTAMP WITH TIME ZONE保存的是當前時間轉化到 時區的對應的時間 並通過最後兩位來保存時區信息

第一位表示時區的小時部分 時區用 x 表示 東n區在這個基礎上加n 西n區在這個基礎上減n 我們所處的東 區表示為 x C 西 區表示為 xF

lishixin/Article/program/Oracle/201311/18690

熱點內容
java返回this 發布:2025-10-20 08:28:16 瀏覽:705
製作腳本網站 發布:2025-10-20 08:17:34 瀏覽:969
python中的init方法 發布:2025-10-20 08:17:33 瀏覽:677
圖案密碼什麼意思 發布:2025-10-20 08:16:56 瀏覽:830
怎麼清理微信視頻緩存 發布:2025-10-20 08:12:37 瀏覽:737
c語言編譯器怎麼看執行過程 發布:2025-10-20 08:00:32 瀏覽:1076
郵箱如何填寫發信伺服器 發布:2025-10-20 07:45:27 瀏覽:309
shell腳本入門案例 發布:2025-10-20 07:44:45 瀏覽:189
怎麼上傳照片瀏覽上傳 發布:2025-10-20 07:44:03 瀏覽:875
python股票數據獲取 發布:2025-10-20 07:39:44 瀏覽:830