oracle数据库的date和timestamp类型

1.date类型存储数据的格式为年月日时分秒,可以精确到秒

timestamp类型存储数据的格式为年月日时分秒,可以精确到纳秒(9位)

2.date类型

Date类型的数据可以显示到年月日,也可以显示到年月日时分秒,主要看存储数据的精确度

注:这里的显示是指从plsql可视化工具中看到的数据显示

1)存储年月日只显示年月日

2)没有存时分秒,或者时分秒位00:00:00,也都只显示年月日

 3)注意:还有一种报错的情况

4)存储年月日时分秒才会显示年月日时分秒

注意:date类型存储到数据库的格式一定是年月日时分秒,但有关为什么没有时分秒时不显示问题,是plsql这个可视化工具针对没有时分秒或者时分秒为00:00:00做了处理,在这种情况下不显示时分秒,别的工具我没有试验过

3.timestamp可以存储数据最大精度为纳秒(9),但默认存储的精度为微秒(6)

Oracle定义语法:TIMESTAMP [(precision)]
precision 的范围为0到9, 默认为6. 默认的可以写作timestamp或者timestamp(6)

-- 建表包含timestamp类型.
SQL> create table tb__order(create_time timestamp);
SQL> insert into tb__order values(TO_TIMESTAMP(‘2006-12-01 12:12:09.123456789‘, ‘YYYY-MM-DD HH24:MI:SS.FF‘));
创建表时没有指定timestamp的精度范围,所以默认是6,添加数据时FF就是精度范围,而添加的数据是9位,那么存储数据时会四舍五入存储到6位,
所以存储结果是‘2006-12-01 12:12:09.123457‘
如果想使用更高的精确度就需要建表时指定了. (一般用不到)
SQL> create table tb__order(create_time timestamp(9));

1)查询系统时间可以精确到9

2)默认查询精确到6

3)操作timestamp类型只要不在0-9之间都会报错

4.current_date与current_timestamp

mybtais的mapper.xml文件

1)当current_date时,存储的是当前时间的年月日时分秒格式

对应的数据库类型是date

2)当current_timestamp时,存储的数据精确到6位

对应的数据库类型是timestamp

				
时间: 2024-08-09 17:47:21

oracle数据库的date和timestamp类型的相关文章

Oracle数据库以date类型保存日期时,Java中用哪个类对应数据库的date类型?

1. 使用JDBC操作Oracle数据库时,使用java.sql.Date类型对应数据库的date类型,此时只能保存和读取日期部分, 时间(时分秒)部分不能读取和保存:  查询结果集可以直接获取Date类型的数据:java.sql.Date date=resultSet.getDate("dateTime"): java.sql.Date类型的数据也可以直接保存到数据库或者与数据库中date类型的数据直接比较大小: 字符串的日期,则用SQL语句的转换函数 to_date('2017-4

MySQL中DATETIME、DATE和TIMESTAMP类型的区别

一.TIMESTAMP 显示格式:YYYY-MM-DD HH:MM:SS 时间范围:[ '1970-01-01 00:00:00'到'2037-12-31 23:59:59'] TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP  在创建新记录和修改现有记录的时候都对这个数据列刷新. TIMESTAMP DEFAULT CURRENT_TIMESTAMP  在创建新记录的时候把这个字段设置为当前时间,但以后修改时,不再刷

oracle 数据库中 date类型数据查询操作,格式转换,字符转date

//查询日期(类型为date)的数据 select * from auth_organization_t t where to_char(create_date,'yyyy-mm-dd hh:mi:ss') = '2013-08-12 05:31:09' select to_char(create_date,'yyyy-mm-dd hh:mi:ss') from auth_organization_t t

Oracle 数据库 INTERVAL DAY TO SECOND类型的使用

INTERVAL DAY TO SECOND类型可以用来存储单位为天和秒的时间间隔.下面这条语句创建一个名为promotions的表,用来存储促销信息.promotions表包含了一个INTERVAL DAY TO SECOND类型的列duration,该列用来记录促销有效的时间间隔:  CREATE TABLE promotions (promotion_id INTEGER CONSTRAINT promotions_pk PRIMARY KEY,name VARCHAR2(30) NOT

Oracle数据库类型

字符类型char[(length)] 定长字符 最长2000字节varchar2[(length)] 可变长度的字符数据类型,最长4000字节NCHAR[(length)] 固定长度的字符数据类型,由国际字符语言(national language Support,NLS)字符集字符组成,最长2000字节LONG 可变长度的字符数据类型 最长2GBRAW 原始的二进制数据类型,最长2000字节long raw 原始的二进制数据类型,最长2GBrawid 数据库中一窜12字节地址,用于定位磁盘上某

oracle date 和 timestamp区别

在今天的工作中,学到了以下几个知识点: 一.date和timestamp 的区别 date类型是Oracle常用的日期型变量,他的时间间隔是秒.两个日期型相减得到是两个时间的间隔,注意单位是"天".例如:查看一下当前距离伦敦奥运会开幕还有多长时间: select to_date('2012-7-28 03:12:00','yyyy-mm-dd hh24:mi:ss')-sysdate from dual 结果是:92.2472685185185天,然后你根据相应的时间换算你想要的间隔就

转 数据库中的 date datetime timestamp的区别

转 数据库中的 date datetime timestamp的区别 DATETIME, DATE和TIMESTAMP类型是相关的.本文描述他们的特征,他们是如何类似的而又不同的. DATETIME类型用在你需要同时包含日期和时间信息的值时.MySQL检索并且以'YYYY-MM-DD HH:MM:SS'格式显示DATETIME值,支持的范围是'1000-01-01 00:00:00'到'9999-12-31 23:59:59'.(“支持”意味着尽管更早的值可能工作,但不能保证他们可以.) DAT

oracle date 和 timestamp 区别

1.DATE数据类型 这个数据类型我们实在是太熟悉了,当我们需要表示日期和时间的话都会想到date类型.它可以存储月,年,日,世纪,时,分和秒.它典型地用来表示什么时候事情已经发生或将要发生.     DATE数据类型的问题在于它表示两个事件发生时间间隔的度量粒度是秒.这个问题将在稍后讨论timestamp的时候被解决.可以使用TO_CHAR函数把DATE数据进行传统地包装,达到表示成多种格式的目的. 1 SQL> SELECT TO_CHAR(date1,'MM/DD/YYYY HH24:MI

Vertica的date与timestamp数据类型,to_date()与to_timestamp()函数区别

实验环境:3节点,RHEL6.4 + Vertica 7.0.1 实验目的:了解Vertica数据库的date与timestamp数据类型,to_date()与to_timestamp()函数区别 构造的实验表中只有10条记录. 1.查询表记录数据如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 irnop=> select start_time from perf_rnc_w_3;      start_time     ---------------------