首页 > 数据库 >oracle 时间格式查询存储记录

oracle 时间格式查询存储记录

时间:2022-12-30 10:44:06浏览次数:53  
标签:存储 数据类型 Date 类型 oracle 格式

mybatis查询出oracle 时间格式数据,选择何种数据类型能够接收

问题:

1、数据库中时间的存储,有哪几种类型

2、这几种类型,对应使用mybatis查询出来,使用什么数据类型去接收

数据库中时间的存储,有哪几种类型

使用DataGrip 在oracle中创建一张表,可以看到时间存储方式可以分为以下几种:
image

1、DATE

Date类型,使用该类型存储的时间格式为 yyyy-MM-dd HH:mm:ss 格式

(注:存储时需要指定格式为 yyyy-MM-dd HH24:mi:ss 因为oracle 格式不区分大小写,直接存储与返回前一格式的时间数据,会导致时间格式化异常,导致显示的时间出错)

​ 该类数据查询出来可以使用哪些Java的实体类型接受呢?

​ 使用java.util.Date 类型接收,使用String 接受也可以

​ 注:需要与java.sql.Date 进行区分,使用java.sql.Date接受的数据类型,使用sql.Date会丢失时分秒

如下所示:

image

2、VARCHAR2

​ 使用VARCHAR2 存储的时间,本质上为字符串类型,直接使用String 接收即可,但后续使用需要对其进行转换,可以采用java.time.format.DateTimeFormatter 格式化String 格式的存储的时间,转化为LoalDateTime类型或者Date类型。

3、NUMBER

使用NUMBER类型以及存储的时间,一般存的是时间戳,时间戳有两种,分别为秒以及毫秒存储的格式

​ number 类型与 numeric 的区别:

​ numberic 类型可以存储负整数正整数,分数,浮点数

​ Number( p,s) Number数据类型存储一个有p位精确度的s位等级的数据
​ numeric是number子类型,number可以存放1E-130~10E125数字,numeric最大精度为38位

4、TIMESTAMP

​ DATE数据类型的主要问题是它粒度不能足够区别出两个事件哪个先发生。ORACLE已经在DATE数据类型上扩展出来了TIMESTAMP数据类型,它包括了所有DATE数据类型的年月日时分秒的信息,而且包括了小数秒的信息

​ 从数据库中查询出TIMESTAMP类型的数据,同样可以使用Date 类型以及String 类型接收。

参考文献:

https://www.yiibai.com/oracle/oracle-date.html

https://www.cnblogs.com/java-class/p/4742740.html

https://blog.csdn.net/Master_Shifu_/article/details/82055344

https://www.jianshu.com/p/c8d36b9c3f12

标签:存储,数据类型,Date,类型,oracle,格式
From: https://www.cnblogs.com/charler/p/17014292.html

相关文章