我的编程空间,编程开发者的网络收藏夹
学习永远不晚

ORACLE中有哪些日期类型

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

ORACLE中有哪些日期类型

ORACLE中有哪些日期类型,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

数据库中有4中日期类型:


1、DATE:是最早和使用最广的日期类型,使用示例如下。


DATE is the oldest and most widely used data type. Though the name is "DATE", it stores also information about the time. Internally, DATE stores year, month, day, hour, minute and second as explicit values. To get the current timestamp as an instance of DATE, use the SYSDATE SQL function.


SQL> alter session set nls_date_format='YYYY-MM-DD HH24:MI:SS';
SQL> select sysdate, dump(sysdate) as date_bytes from dual;


SYSDATE              DATE_BYTES                           
-------------------- -----------------------------------
2017-11-23 23:41:08  Typ=13 Len=8: 225,7,11,23,23,41,8,0  




2、TIMESTAMP:扩展了DATA类型,包含了分秒和时区。


TIMESTAMP extends DATE by fractional seconds. Internally, time zone information is also contained, but in order to work with time zones, one of the other two data types, TIMESTAMP WITH TIME ZONE or TIMESTAMP WITH LOCAL TIME ZONE must be used. To get the current timestamp as a TIMESTAMP instance, use the LOCALTIMESTAMP SQL function. As the DUMP result below shows, TIMESTAMP stores year, month, day, hour, minute and second similar to DATE. The other bytes are there for fractional seconds and time zone information. TIMESTAMP instances consume more space on disk than DATE instances, which is natural - they contain more information.




SQL> alter session set nls_timestamp_format='YYYY-MM-DD HH24:MI:SS.FF6';
SQL> select localtimestamp, dump(localtimestamp) ts_bytes from dual;


LOCALTIMESTAMP              TS_BYTES                                                               
--------------------------- ---------------------------------------------------------------------
2017-11-24 08:45:41.434175  Typ=187 Len=20: 225,7,11,24,8,45,41,0,24,252,224,25,1,0,3,0,127,1,0,0


3、SYSTIMESTAMP显示时区,SYSTIMESTAMP显示当前数据库时区,CURRENT_TIMESTAMP显示当前会话时区;


TIMESTAMP WITH TIME ZONE allows to explicitly work with time zone information. A time zone can be used to create a TIMESTAMP WITH TIME ZONE instance and it is explicitly contained in the output (use the right format mask). When the output of a TIMESTAMP WITH TIME ZONE value does not contain a time zone, you have incomplete data.
Oracle does not implicitly convert instances of this data type between time zones; this can be done explicitly with the AT TIME ZONE clause. To get the current time as a TIMESTAMP WITH TIME ZONE instance, we can use two functions: SYSTIMESTAMP returns the current time in the database time zone and CURRENT_TIMESTAMP returns it in the current session time zone. The following example uses SYSTIMESTAMP.


SQL> alter session set nls_timestamp_tz_format='YYYY-MM-DD HH24:MI:SS.FF6 TZR';
SQL> select systimestamp as ts_bytes from dual;


SYSTIMESTAMP
----------------------------------
2017-11-23 23:57:04.609608 -08:00


4、本地时区和数据库时区转换。TIMESTAMP隐含使用本地时区,默认使用会话时区插入,存储时默认使用数据库时区。


TIMESTAMP WITH LOCAL TIME ZONE does not expose the time zone information (to the application, it looks like a TIMESTAMP), but it uses tome zones implicitly: An instance is created without time zone information, the session time zone is assumed. Stored instances are normalized to the database time zone. When the data is retrieved, users see it (again) in the session time zone. 
The following example illustrates how TIMESTAMP WITH LOCAL TIME ZONE works: First, a table is created. Then the current time is retrieved and stored into the table ( SYSTIMESTAMP returns TIMESTAMP WITH TIME ZONE, but this is automatically converted to TIMESTAMP WITH LOCAL TIME ZONE ). When the table is then being selected, the returned data changes with the session time zone.


SQL> create table mytimestamps( ts timestamp with local time zone );
SQL> insert into mytimestamps values ( systimestamp );
SQL> alter session set time_zone='Europe/Berlin';
SQL> select * from mytimestamps;


TS
---------------------------------------------------------------------------
2017-11-24 12:55:39.761283


SQL> alter session set time_zone='EST';
SQL> select * from mytimestamps;


TS
---------------------------------------------------------------------------
2017-11-24 06:55:39.761283




Format Masks


Whether we work within an application or a tool like SQL Plus or SQL Developer; whenever we output a DATE or TIMESTAMP instance, we're converting it to VARCHAR2. We can do this explicitly using TO_CHAR or Oracle will do it implcitly. And now NLS format masks kick in - the format mask decides how a DATE is converted to a VARCHAR2 and back. The are defaults for NLS format masks at the database level, we can set them at the session level or we can pass a format mask to the individual TO_CHAR call.
看完上述内容,你们掌握ORACLE中有哪些日期类型的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

ORACLE中有哪些日期类型

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

mysql日期类型有哪些

mysql日期类型有DATE、TIME、DATETIME、TIMESTAMP、YEAR。详细介绍:1、DATE,用于存储日期,只能存储日期,不能存储时间部分;2、TIME,用于存储时间,格式为只能存储时间,不能存储日期部分;3、DATETI
2023-07-19

Oracle中日期函数有哪些

这篇文章主要介绍了Oracle中日期函数有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。日期函数 SYSDATE SYSDA
2023-06-03

web日志类型有哪些

本篇内容介绍了“web日志类型有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!应用程序日志让我们从最常见的日志类型开始:应用程序日志。大
2023-06-02

Linux日志有哪些类型

这篇“Linux日志有哪些类型”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Linux日志有哪些类型”文章吧。大部分Linu
2023-06-28

oracle中boolean类型有哪些特点

在Oracle数据库中,BOOLEAN类型有以下特点:BOOLEAN类型是一种逻辑数据类型,只能存储TRUE(真)或FALSE(假)两种值。BOOLEAN类型通常用于存储逻辑条件的结果,例如存储过程或函数中的条件判断结果。BOOLEAN类型
oracle中boolean类型有哪些特点
2024-03-02

oracle中raw类型有哪些特点

在Oracle中,RAW类型具有以下特点:RAW类型用于存储二进制数据,不进行任何转换。RAW类型的长度在创建表时必须指定,长度范围为1到2000字节。RAW类型的数据不会被数据库进行任何字符集转换,保持原始的二进制格式。RAW类型的
oracle中raw类型有哪些特点
2024-03-15

oracle中decimal类型有哪些特点

在Oracle中,decimal类型通常指的是NUMBER数据类型,它具有以下特点:可以存储任意精度的数字,包括整数和小数。可以指定数字的精度(总位数)和标度(小数点后的位数)。支持十进制算术运算,包括加减乘除等操作。支持各种数学函数
oracle中decimal类型有哪些特点
2024-04-09

oracle中float类型有哪些特点

在Oracle数据库中,float类型是一种浮点数数据类型,具有以下特点:存储范围广泛:float类型可以存储很大的数值范围,通常为-3.4E+38到3.4E+38之间。精度不固定:float类型的精度是不固定的,因此在进行小数计算时可能会
oracle中float类型有哪些特点
2024-04-09

oracle中integer类型有哪些特点

在Oracle中,整数(integer)类型的特点包括:整数类型在Oracle中通常使用NUMBER数据类型来表示,可以使用不同的精度和范围来存储整数值。整数类型可以存储正数、负数和零。整数类型的精度可以根据需要进行调整,可以存储小整数
oracle中integer类型有哪些特点
2024-04-09

oracle文件类型有哪些

oracle 文件类型包括:数据文件 (dbf):存储数据和索引。重做日志文件 (rdo):记录数据库更改以确保完整性。控制文件 (ctl):存储数据库结构和文件信息。参数文件 (pfl):存储启动实例配置。服务器参数文件 (spf):存储
oracle文件类型有哪些
2024-04-19

oracle索引类型有哪些

oracle索引类型有:1、B-Tree索引;2、位图索引;3、函数索引;4、哈希索引;5、反向键索引;6、局部索引;7、全局索引;8、域索引;9、位图连接索引;10、复合索引。详细介绍:1、B-Tree索引,是一种自平衡的、可以高效地支持
oracle索引类型有哪些
2023-11-16

linux日志文件类型有哪些

这篇文章主要介绍“linux日志文件类型有哪些”,在日常操作中,相信很多人在linux日志文件类型有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”linux日志文件类型有哪些”的疑惑有所帮助!接下来,请跟
2023-02-14

oracle的约束类型有哪些

在Oracle数据库中,常见的约束类型包括:主键约束(Primary Key Constraint):用于唯一标识表中的每一行数据,通常是一个或多个字段的组合,保证唯一性和非空性。外键约束(Foreign Key Constraint):用
oracle的约束类型有哪些
2024-03-04

oracle数据库类型有哪些

oracle 数据库类型提供不同功能,包括:多模式 (mm)、rac、nosql、autonomous database、exadata、appliance 和 vault。选择合适的类型取决于应用程序和工作负载的要求,包括数据类型、批量、
oracle数据库类型有哪些
2024-04-08

ACCESS和SQL Server下Like日期类型查询的区别有哪些

本篇内容主要讲解“ACCESS和SQL Server下Like日期类型查询的区别有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“ACCESS和SQL Server下Like日期类型查询的区别
2023-06-08

编程热搜

目录