TIMESTAMP的幾種類型比較
TIMESTAMP
時間戳類型,與date的區別在于,date不能精確到毫秒,而timestamp可以精確到毫秒,毫秒的位數為0-9位,默認為6位。
SQL> select tp from timestamp_test;TP--------------------------------------------------------------------------------01-3月 -16 09.22.33.000000 上午
TIMESTAMP WITH TIME ZONE
TIMESTAMP WITH TIME ZONE 與 TIMESTAMP的區別在于,前者輸出顯示攜帶存入該時間值的數據庫時區,后者輸出不攜帶時區。
SQL> select tp_tz from timestamp_test;TP_TZ--------------------------------------------------------------------------------01-3月 -16 09.22.33.000000 上午 +08:00
TIMESTAMP WITH LOCAL TIME ZONE與TIMESTAMP的區別在于,前者的輸出受時區影響,會跟著時區的變化而變化,而后者存入數據庫后將不受時區影響。即前者以數據庫本地時區保存數據,輸出時將轉換成客戶端時區輸出。
SQL> select tp_l_tz from timestamp_test;TP_L_TZ--------------------------------------------------------------------------------01-3月 -16 09.22.33.000000 上午
實戰演練
# 創建timestamp_test測試表SQL> create table timestamp_test(dt date,tp timestamp(6),tp_tz timestamp(6) with time zone,tp_l_tz timestamp(6) with local time zone);Table created# 在測試表中添加數據SQL> insert into timestamp_test values(sysdate,sysdate,sysdate,sysdate);1 row insertedSQL> commit;Commit complete# 查看數據庫的時區和當前會話的時區SQL> select dbtimezone,sessiontimezone from dual;DBTIMEZONE SESSIONTIMEZONE---------- ---------------------------------------------------------------------------+00:00 +08:00# 查看當前時間SQL> select sysdate from dual;SYSDATE-----------2016/3/1 9:# 查看測試表的數據SQL> select * from timestamp_test;DT TP TP_TZ TP_L_TZ----------- -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- --------------------------------------------------------------------------------2016/3/1 9: 01-3月 -16 09.22.33.000000 上午 01-3月 -16 09.22.33.000000 上午 +08:00 01-3月 -16 09.22.33.000000 上午# 修改當前會話的時區SQL> alter session set time_zone='+10:00';Session altered# 查看當前會話時區修改后的測試表的數據SQL> select dbtimezone,sessiontimezone from dual;DBTIMEZONE SESSIONTIMEZONE---------- ---------------------------------------------------------------------------+00:00 +10:00SQL> select * from timestamp_test;DT TP TP_TZ TP_L_TZ----------- -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- --------------------------------------------------------------------------------2016/3/1 9: 01-3月 -16 09.22.33.000000 上午 01-3月 -16 09.22.33.000000 上午 +08:00 01-3月 -16 11.22.33.000000 上午Oracle的備份與恢復
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流。
新聞熱點
疑難解答