当前位置:首页 » 存储配置 » 数据库日期存储

数据库日期存储

发布时间: 2022-05-27 01:04:50

数据库中 日期的几种表示方法

Mysql中经常用来存储日期的数据类型有三种:Date、Datetime、Timestamp。

【1】Date数据类型:用来存储没有时间的日期。Mysql获取和显示这个类型的格式为“YYYY-MM-DD”。支持的时间范围为“1000-00-00”到“9999-12-31”。

【2】Datetime类型:存储既有日期又有时间的数据。存储和显示的格式为 “YYYY-MM-DD HH:MM:SS”。支持的时间范围是“1000-00-00 00:00:00”到“9999-12-31 23:59:59”。

【3】Timestamp类型:也是存储既有日期又有时间的数据。存储和显示的格式跟Datetime一样。支持的时间范围是“1970-01-01 00:00:01”到“2038-01-19 03:14:07”。

(1)数据库日期存储扩展阅读

切记不要用字符串存储日期

这种存储日期的方式的优点还是有的,就是简单直白,容易上手。但是,这是不正确的做法,主要会有下面两个问题:

1、字符串占用的空间更大。

2、字符串存储的日期比较效率比较低(逐个字符进行比对),无法用日期相关的 API 进行计算和比较。

DateTime 类型没有时区信息的

DateTime 类型是没有时区信息的(时区无关),DateTime 类型保存的时间都是当前会话所设置的时区对应的时间。

当你的时区更换之后,比如你的服务器更换地址或者更换客户端连接时区设置的话,就会导致你从数据库中读出的时间错误。不要小看这个问题,很多系统就是因为这个问题闹出了很多笑话。

Timestamp 和时区有关。Timestamp 类型字段的值会随着服务器时区的变化而变化,自动换算成相应的时间,说简单点就是在不同时区,查询到同一个条记录此字段的值会不一样。

② 数据库 存储时间

数据库存储时间有两种方式:
1、 使用Timestamp,则会在数据库里存储:2013-07-16 07:20:01。
在不同时区,显示的都是2013-07-16 07:20:01,但其实他们并不是同一时间了。

2、存储事件发生的时间毫秒值,在不同时区解析出来的时间表示不一样,但表达都是同一时间,能解决时区问题。

③ 如何向数据库中存入日期

),这个接口中有一个setDate方法,两个参数,一个是序号,一个是java.sql.Date,这是java.util.Date的一个子类。
这里请你使用java.text.SimpleDateFormat,这个类可以使用你自定义的格式来对一个string进行parse,并得到一个java.util.Date。但“这种Date”并不能直接送到数据库中去,你需要先用getTime方法得到一个毫秒数,再以此为参数构造一个java.sql.Date。再回到我上点讲的setDate,传进去。即可。
这种方法无须考虑不同数据库使用的日期的格式问题。通用。也不易出错。

④ 数据库中哪种日期存储格式,性能会更好

数据库中日期存储格式有几种,需要根据你的需求抉择:

1、timestamp:既能保证性能又能使用自带时间日期函数
2、int :适合作时间的比较,但是可读性差
3、datetime :适合数据库数据导出,可读性高,但查询性能不高。(不推荐)
4、varchar:不支持时区。(不推荐)

⑤ 如何将日期存入数据库

  1. 将日期转换为int类型时间戳,保存到数据库int类型列,推荐使用这种方式

  2. 将日期保存到数据库date类型列

  3. 把日期直接保存到char/varchar类型列,这种方式是最差的做法,无法比较日期大小,但是可以保存任何格式类型

⑥ mysql数据库里的日期用timestamp还是datetime好

Mysql中经常用来存储日期的数据类型有2种:Date、Datetime.

1.Date数据类型:用来存储没有时间的日期。Mysql获取和显示这个类型的格式为“YYYY-MM-DD”。支持的时间范围为“1000-00-00”到“9999-12-31”。

2.Datetime类型:存储既有日期又有时间的数据。存储和显示的格式为 “YYYY-MM-DD HH:MM:SS”。支持的时间范围是“1000-00-00 00:00:00”到“9999-12-31 23:59:59”。

⑦ 数据库存储日期时间数据时,使用数据类型datetime和datetime2有什么区别

Datetime:
时间格式,对应于数据库中的DateTime类型,对应于.NET里面的System.
DateTime类型。DateTime支持日期从1753年1月1日到9999年12月31日,时间部分的精确度是3.33毫秒,它需要8字节的存储空间。
Datetime2:
时间格式,就Sql
Server
2008
里面新增的字段类型。对应于数据库中的DateTime2格式,对应于.NET里面的System.
DateTime类型。DateTime2则支持从0001年01月01日到9999年12月31日,时间部分的精度是100纳秒,占用6到8字节的存储空间,取决于存储的精度。
datetime2数据类型,类似于之前的datetime类型,不过其精度比较高,可以精确到小数点后面7位(100ns)

⑧ 数据库的日期类型字段该如何选择

Mysql中经常用来存储日期的数据类型有三种:Date、Datetime、Timestamp。

Date数据类型:用来存储没有时间的日期。Mysql获取和显示这个类型的格式为“YYYY-MM-DD”。支持的时间范围为“1000-00-00”到“9999-12-31”。

Datetime类型:存储既有日期又有时间的数据。存储和显示的格式为 “YYYY-MM-DD HH:MM:SS”。支持的时间范围是“1000-00-00 00:00:00”到“9999-12-31 23:59:59”。

Timestamp类型:也是存储既有日期又有时间的数据。存储和显示的格式跟Datetime一样。支持的时间范围是“1970-01-01 00:00:01”到“2038-01-19 03:14:07”。

所有不符合上面所述格式的数据都会被转换为相应类型的0值。(0000-00-00或者0000-00-00 00:00:00)

⑨ 关于数据库中日期的存储

Unix时间戳(Unix timestamp)
定义为从格林威治时间1970年01月01日00时00分00秒起至现在的总秒数
应该是这个……

热点内容
安卓ops是什么文件 发布:2024-11-15 16:32:18 浏览:927
双线性插值算法c 发布:2024-11-15 16:30:45 浏览:866
c语言和vc的区别 发布:2024-11-15 16:19:23 浏览:118
linux是免费的吗 发布:2024-11-15 15:53:44 浏览:617
多控存储 发布:2024-11-15 15:52:42 浏览:283
一年级数学分解算法 发布:2024-11-15 15:41:08 浏览:411
安卓个人热点怎么分享 发布:2024-11-15 15:40:16 浏览:264
垫钱解压 发布:2024-11-15 15:38:54 浏览:336
miui4相当于安卓什么系统 发布:2024-11-15 15:37:54 浏览:709
rc4android 发布:2024-11-15 15:27:25 浏览:742