欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Oracle中TIMESTAMP的幾種類型介紹與實(shí)例

 更新時(shí)間:2016年12月14日 09:35:42   投稿:daisy  
我們都知道date和timestamp都是對(duì)日期和時(shí)間的表示,只是兩種類型的精確度不同,前者精確到秒,后者精確到小數(shù)秒(fractional_seconds_precision),可以是 0 to 9,缺省是6。這篇文章主要介紹了Oralce中TIMESTAMP的幾種類型。有需要的朋友們可以參考借鑒。

TIMESTAMP的幾種類型比較

TIMESTAMP

時(shí)間戳類型,與date的區(qū)別在于,date不能精確到毫秒,而timestamp可以精確到毫秒,毫秒的位數(shù)為0-9位,默認(rèn)為6位。

SQL> select tp from timestamp_test;
TP
--------------------------------------------------------------------------------
01-3月 -16 09.22.33.000000 上午

TIMESTAMP WITH TIME ZONE

TIMESTAMP WITH TIME ZONE 與 TIMESTAMP的區(qū)別在于,前者輸出顯示攜帶存入該時(shí)間值的數(shù)據(jù)庫(kù)時(shí)區(qū),后者輸出不攜帶時(shí)區(qū)。

SQL> select tp_tz from timestamp_test;
TP_TZ
--------------------------------------------------------------------------------
01-3月 -16 09.22.33.000000 上午 +08:00

TIMESTAMP WITH LOCAL TIME ZONE與TIMESTAMP的區(qū)別在于,前者的輸出受時(shí)區(qū)影響,會(huì)跟著時(shí)區(qū)的變化而變化,而后者存入數(shù)據(jù)庫(kù)后將不受時(shí)區(qū)影響。即前者以數(shù)據(jù)庫(kù)本地時(shí)區(qū)保存數(shù)據(jù),輸出時(shí)將轉(zhuǎn)換成客戶端時(shí)區(qū)輸出。

SQL> select tp_l_tz from timestamp_test;
TP_L_TZ
--------------------------------------------------------------------------------
01-3月 -16 09.22.33.000000 上午

實(shí)戰(zhàn)演練

# 創(chuàng)建timestamp_test測(cè)試表
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
# 在測(cè)試表中添加數(shù)據(jù)
SQL> insert into timestamp_test values(sysdate,sysdate,sysdate,sysdate);
1 row inserted
SQL> commit;
Commit complete
# 查看數(shù)據(jù)庫(kù)的時(shí)區(qū)和當(dāng)前會(huì)話的時(shí)區(qū)
SQL> select dbtimezone,sessiontimezone from dual;
DBTIMEZONE SESSIONTIMEZONE
---------- ---------------------------------------------------------------------------
+00:00   +08:00
# 查看當(dāng)前時(shí)間
SQL> select sysdate from dual;
SYSDATE
-----------
2016/3/1 9:
# 查看測(cè)試表的數(shù)據(jù)
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 上午
# 修改當(dāng)前會(huì)話的時(shí)區(qū)
SQL> alter session set time_zone='+10:00';
Session altered
# 查看當(dāng)前會(huì)話時(shí)區(qū)修改后的測(cè)試表的數(shù)據(jù)
SQL> select dbtimezone,sessiontimezone from dual;
DBTIMEZONE SESSIONTIMEZONE
---------- ---------------------------------------------------------------------------
+00:00   +10:00
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 11.22.33.000000 上午
Oracle的備份與恢復(fù)

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來(lái)一定的幫助,如果有疑問(wèn)大家可以留言交流。

相關(guān)文章

最新評(píng)論