Oracle中的TIMESTAMP資料型別
timestamp格式表示的時間如何轉換成普通格式:
SQL> SELECT to_char(tp,'dd-mm-yyyy hh24:mi:ss.ff') FROM TIMESTAMPTEST;
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
java.sql.Timestamp 和 java.sql.Date互相轉換:
java.sql.Date--->java.sql.Timestamp new java.sql.Timestamp(yourDate.getTime()); java.sql.Timestamp-->java.sql.Date new java.sql.Date(yourTimestamp.getTime()); 介面要顯示毫秒的話,在date傳到前面時轉化格式即可!
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
TIMESTAMP 資料型別,是DATE的擴充套件,可以儲存年、月、日、小時 、分鐘、秒,同時還可以儲存秒的小數部分。
語法為:TIMESTAMP [(fractional_seconds_precision)]
fractional_seconds_precision為可選項,指定秒的小數部分的精度,取值範圍為0-9,預設值為6。
示例程式碼:
declare
v_inteval timestamp (7);
begin
v_inteval := TIMESTAMP '2007-05-05 23:34:45.1234567';
dbms_output.put_line(v_inteval);
end;
結果為:05-5月 -07 11.34.45.1234567 下午。
說明:如果精度為5,則結果為05-5月 -07 11.34.45.12346 下午;如果精度為8,則結果為05-5月 -07 11.34.45.12345670 下午。
二、TIMESTAMP WITH TIME ZONE
TIMESTAMP WITH TIME ZONE資料型別是可以指定時區的TIMESTAMP 。時區的偏移是指本地時間和格林尼治(UTC)時間之間的差異(小時 和分鐘)。
語法為:TIMESTAMP [(fractional_seconds_precision)] WITH TIME ZONE
fractional_seconds_precision為可選項,指定秒的小數部分的精度,取值範圍為0-9,預設值為6。
如果2個TIMESTAMP WITH TIME ZONE,相對於UTC代表相同的時間,則認為這2個TIMESTAMP WITH TIME ZONE是相等的,而不管這2個TIMESTAMP WITH TIME ZONE所代表的具體時間,例如:TIMESTAMP '1999-04-15 8:00:00 -8:00'和TIMESTAMP '1999-04-15 11:00:00 -5:00'是相等的,雖然他們分別表示當地的8點和11點,其中-8:00以及-5:00,表示相對UTC的偏移量。
在上例中,也可以將偏移量替換成時區地區(TRZ,time zone region),例如,上例中的TIMESTAMP '1999-04-15 8:00:00 -8:00',與TIMESTAMP '1999-04-15 8:00:00 US/Pacific'是相等的。
為了削除因為夏令時引起的時間歧義,同時使用TRZ,以及和TRZ相對應的TRD來確保返回正確的時間,例如:TIMESTAMP '1999-10-29 01:30:00 US/Pacific PDT'。如果沒有使用TZD元素,並且ORACLE 的ERROR_ON_OVERLAP_TIME session引數設定為TRUE,則ORACLE 會返回錯誤。如果ERROR_ON_OVERLAP_TIME session引數設定為FALSE,則ORACLE 認為該TIMESTAMP WITH TIME ZONE為標準時間。
程式碼一:
declare
v_inteval timestamp (7) with time zone;
begin
v_inteval := TIMESTAMP '2007-05-05 23:34:45.1234567';
dbms_output.put_line(v_inteval);
end;
結果為:05-5月 -07 11.34.45.123456700 下午 +08:00。
說明:該結果與(一)中的程式碼結果相比,多了一個時區偏移量+08:00,說明該時間為北京時間。
程式碼二:
declare
v_inteval_1 timestamp (3) with time zone;
v_inteval_2 timestamp (3) with time zone;
begin
v_inteval_1 := TIMESTAMP '1999-04-15 8:00:00 -8:00';
v_inteval_2 := TIMESTAMP '1999-04-15 11:00:00 -5:00';
if(v_inteval_1=v_inteval_2) then
dbms_output.put_line('v_inteval_1=v_inteval_2');
else
dbms_output.put_line('v_inteval_1!=v_inteval_2');
end if;
end;
結果為:v_inteval_1=v_inteval_2。
三、TIMESTAMP WITH LOCAL TIME ZONE
TIMESTAMP WITH LOCAL TIME ZONE資料型別也是可以指定時區的TIMESTAMP ,和TIMESTAMP WITH TIME ZONE不同的是,他儲存的是資料庫的時區,時區偏移量並不儲存。當使用者提交資料,ORACLE 返回的是使用者的本地所在的時區。時區的偏移是指本地時間和格林尼治(UTC)時間之間的差異(小時 和分鐘)。TIMESTAMP WITH LOCAL TIME ZONE主要用於CS二層系統應用。
語法:TIMESTAMP [(fractional_seconds_precision)] WITH LOCAL TIME ZONE
以上程式碼的執行環境:oracle9.2,pl/sql developer
come from:http://cai555.iteye.com/blog/460008
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/90618/viewspace-733707/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- [20191219]oracle timestamp資料型別的儲存.txtOracle資料型別
- [20241009]oracle timestamp with time zone資料型別的儲存.txtOracle資料型別
- mysql 資料型別TIMESTAMPMySQL 資料型別
- Oracle中Date和Timestamp的區別Oracle
- Oracle 資料型別Oracle資料型別
- Oracle的number資料型別Oracle資料型別
- 【轉】ORACLE資料型別Oracle資料型別
- Oracle anydata資料型別Oracle資料型別
- ORACLE NUMBER資料型別Oracle資料型別
- Oracle資料型別對應Java型別Oracle資料型別Java
- Oracle OCP(19):資料型別Oracle資料型別
- Java中的基本資料型別與引用資料型別Java資料型別
- Oracle字串資料型別簡述Oracle字串資料型別
- MySQL 的 timestamp 和 datetime 型別比較MySql型別
- mysql資料庫時間型別datetime、bigint、timestamp的查詢效率比較MySql資料庫型別
- Oracle TimestampOracle
- javascript中的資料型別JavaScript資料型別
- Java中的資料型別Java資料型別
- JAVA中基本資料型別和引用資料型別Java資料型別
- JS中其他資料型別轉為number資料型別的方法JS資料型別
- Oracle和sqlserver資料型別對應OracleSQLServer資料型別
- Oracle基本資料型別儲存格式淺析——RAW型別Oracle資料型別
- Hive中的集合資料型別Hive資料型別
- pandas中的series資料型別資料型別
- MySQL中datetime和timestamp的區別MySql
- mysql資料庫date 、datetime、time、timestamp區別MySql資料庫
- 資料型別與函式索引-Oracle篇資料型別函式索引Oracle
- Mysql日期(DATE, TIME, DATETIME, TIMESTAMP)型別的比較MySql型別
- JavaScript中的資料型別-儲存差別JavaScript資料型別
- 【OpenCV教程】OpenCV中的資料型別OpenCV資料型別
- PHP7中的資料型別PHP資料型別
- MySQL中資料型別的驗證MySql資料型別
- js資料型別之基本資料型別和引用資料型別JS資料型別
- oracle資料庫事務transaction 不同的鎖lock型別Oracle資料庫型別
- Oracle BLOB型別的資料如何檢視和下載?Oracle型別
- 資料型別: 資料型別有哪些?資料型別
- 1.1. Oracle 資料庫使用者型別Oracle資料庫型別
- 自主資料型別:在TVM中啟用自定義資料型別探索資料型別
- Java中的資料型別和運算子Java資料型別