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
分享到:
相关推荐
在Oracle数据库中,`TIMESTAMP`与`DATE`两种数据类型是用于存储日期和时间信息的关键组成部分,但它们之间存在显著的区别,特别是在处理时间和精度方面。本文将深入探讨这两种数据类型的特点,以及如何在实际应用中...
了解Oracle数据库与.NET数据类型的映射关系对于开发人员来说至关重要,这直接影响到数据的正确存储、检索和处理。以下是对"Oracle与.Net 数据类型映射"这一主题的详细解释。 首先,Oracle数据库提供了一系列的数据...
Oracle 数据库中 TIMESTAMP 与 DATE 两个数据类型都是用于存储日期和时间的,但是它们之间有着很大的区别。在本文中,我们将详细比较这两个数据类型的特点、使用场景和优缺点。 DATE 数据类型 DATE 数据类型是 ...
在Oracle数据库中,日期时间数据类型主要包括`DATE`、`TIMESTAMP`及其变体(如`TIMESTAMP WITH TIME ZONE`、`TIMESTAMP WITH LOCAL TIME ZONE`)以及`INTERVAL`数据类型。这些数据类型被广泛应用于记录日期、时间...
Oracle的Timestamp with Time Zone类型是一种能够存储日期、时间和时区信息的数据类型。它不仅记录了事件发生的具体时间,还记录了这个时间是在哪个时区发生的。这对于全球化应用来说尤其重要,因为同一时刻在不同的...
本文将深入探讨SQL Server与Oracle中的数据类型区别,并通过具体的例子来说明这两种系统之间的转换方法。 ### SQL Server 数据类型 SQL Server 是微软开发的一款关系型数据库管理系统,它支持多种数据类型,可以...
Oracle 和 SQL 数据类型是数据库管理系统中用于定义和存储数据的基础组件。它们决定了数据的结构、大小以及如何进行处理。以下是两种数据库系统中主要数据类型的详细比较: **Oracle 数据类型** 1. **Char**: Char...
Oracle 与 DB2 数据类型的分类对应说明 在数据类型方面,Oracle 和 DB2 都提供了多种数据类型以满足不同的应用需求。然而,这两种数据库管理系统之间的数据类型并不完全相同,本文将对 Oracle 和 DB2 数据类型进行...
在 Oracle 数据库与 Java 应用程序交互时,理解 SQL 数据类型和它们对应的 JDBC 类型以及 Oracle 扩展的 Java 类型是至关重要的。这里我们将深入探讨这些概念,并提供一个全面的指南。 首先,JDBC(Java Database ...
Mysql、Oracle 中的数据类型与 Java 中的数据类型对应表 MySQL 和 Oracle 是两种常用的关系型数据库管理系统,而 Java 是一种广泛应用于企业级应用开发的编程语言。在数据库应用开发中,理解数据类型的对应关系...
MySQL和Oracle的数据类型则针对存储和操作数据库中的各种数据类型进行了优化。 MySQL的数据类型包括数值类型(如INT、DECIMAL)、字符串类型(如VARCHAR、TEXT)、日期和时间类型(如DATE、TIMESTAMP)以及二进制...
Oracle 数据类型是数据库管理系统Oracle中用于定义和存储各种数据类型的规则和格式。这些数据类型决定了字段可以存储的数据种类,以及如何存储和处理这些数据。在Oracle中,数据类型分为多种,包括字符类型、数值...
在Oracle数据库中,`TIMESTAMP` 是一种用于存储日期和时间数据类型的字段,与传统的`DATE`类型相比,它的精度更高,能够精确到小数秒。`TIMESTAMP` 类型的精度可设置为 0 到 9 位,缺省情况下是 6 位,这意味着它...
Oracle数据库系统支持多种数据类型,这些数据类型用于定义表中的列,以便存储各种形式的信息。以下是对Oracle支持的数据类型进行详细解释: 1. 字符类: - `CHAR`:这是一个定长字符串类型,最大长度为2000个字符...
本文旨在对比Oracle和DB2/400数据库管理系统中的数据类型,并重点分析日期和时间类型的差异。由于Oracle和DB2/400在数据类型的定义和实现上存在差异,因此在进行数据库迁移或跨平台开发时,了解这些差异至关重要。 ...
Oracle数据库中的`DATE`和`TIMESTAMP`是两种常见的日期和时间数据类型,它们在处理时间信息时有着不同的特性和用途。 首先,`DATE`数据类型是我们最常使用的,它可以存储日期和时间,包括世纪、年、月、日、小时、...
Schema 类型通常与数据库系统提供的数据类型一致,例如 Oracle9i 中的 NUMBER、CHAR 和 DATE。 4. 其他数据库系统的数据类型对比: - DB2:它的数据类型如 SMALLINT, INTEGER, BIGINT, REAL, DOUBLE 与 Java 类型...
在Oracle数据库中,`TIMESTAMP`是一种用于存储日期和时间的数据类型,它可以精确到毫秒级别。`TIMESTAMP`数据类型不仅包含了日期和时间,还包含了时区信息,这对于处理全球性的业务非常重要。 #### 2. 创建表并插入...
### Oracle 数据类型详解 Oracle 数据库提供了丰富的内置数据类型,...以上数据类型覆盖了 Oracle 数据库中的大部分应用场景,开发者可以根据具体需求选择合适的数据类型来存储数据,以实现高效的数据管理和查询操作。
Oracle 数据类型是数据库管理系统中用于存储不同类型数据的结构。在Oracle数据库中,数据类型分为多个类别,包括字符类型、数值类型、二进制类型、日期和时间类型以及特殊类型。下面将详细介绍这些数据类型。 1. **...