日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

oracle关于时区,关于oracle时区

發布時間:2024/8/23 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 oracle关于时区,关于oracle时区 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

關于oracle時區[@more@]

商業和數據庫很多時候必須跨時區工作,從9i開始,oracle環境開始有了時區意識,通過指定數據庫的時區和使用TIMESTAMP WITH TIME ZONE和TIMESTAMP WITH LOCAL TIME ZONE數據類型來實現該功能。

TIMESTAMP WITH TIME ZONE不會存儲數據庫時區,但是有一個指示用來說明該時間所使用的時區。TIMESTAMP WITH LOCAL TIME ZONE會同時存儲數據庫時區,并且會根據查詢客戶端的時區進行相應的轉換。

數據庫時區可以在創建時在create database命令中設置,也可以使用alter database set TIME_ZONE=...來修改。如果沒有特別的指定,默認的,數據庫將遵從主機操作系統時區設置,或者取自環境變量ORA_STDZ。所有支持的時區記錄在V$TIMEZONE_NAMES動態性能表中。時區有三種表示方法,全名、縮寫和相對于標準時間(格林威治時間)的固定偏移,比如標準時間相應的三種表示方法分別為:Etc/Greenwich、GMT和+00:00。

下面通過一個例子來說明時區的調整的影響。

1.建立相關的表:

SQL> create table times(date_std date, date_tz timestamp with time zone,

date_ltz timestamp with local time zone);

Table created.

2.確定系統當前的時區:

SQL> select property_value from database_properties where property_name='DBTIMEZONE';

PROPERTY_VALUE

00:00

3.修改當前連接的時區,并設置相關的時間戳格式:

SQL> alter session set time_zone='Asia/Chongqing';

Session altered.

SQL> alter session set nls_timestamp_tz_format='YYYY-MM-DD HH24:MI:SS TZD:TZR';

或者

SQL> alter session set nls_timestamp_tz_format='YYYY-MM-DD HH24:MI:SS TZH';

Session altered.

SQL> alter session set nls_timestamp_format='YYYY-MM-DD HH24:MI:SS';

Session altered.

SQL> alter session set nls_date_format='YYYY-MM-DD HH24:MI:SS';

Session altered.

4.插入數據并顯示:

SQL> insert into times values('2004-10-26 15:00:00',

2004-10-26 15:00:00','2004-10-26 15:00:00');

1 row created.

SQL> commit;

Commit complete.

SQL> select * from times;

DATE_STD DATE_TZ DATE_LTZI

------------------- ---------------------------------------- ------------------------------

02004-10-26 15:00:00 2004-10-26 15:00:00 CST:ASIA/CHONGQING 2004-10-26 15:00:00

5.轉換當前連接的時區到數據庫時區:

SQL> alter session set time_zone=DBTIMEZONE;

Session altered.

SQL> select * from times;

DATE_STD DATE_TZ DATE_LTZ

------------------- ---------------------------------------- ------------------------------

2004-10-26 15:00:00 2004-10-26 15:00:00 +08 2004-10-26 07:00:00

可以看出,timestamp with local time zone類型的字段DATE_LTZ已經根據時區的變換做出了相應的改變。

總結

以上是生活随笔為你收集整理的oracle关于时区,关于oracle时区的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。