MySQL、Oracle、SQL Server时间类型字段

关系型数据库时间类型字段

MySQL(以及对应格式)SQL Server(以及对应格式)Oracle
time(HH-MM-SS) time (12:35:29.1234567) date(YYYY-MM-DD HH:MM:SS)
date(YYYY-MM-DD) date (YYYY-MM-DD) timestamp (YYYY-MM-DD HH:MM:SS)
datetime(YYYY-MM-DD HH:MM:SS) smalldatetime (2007-05-08 12:35:00)  
timestamp(YYYY-MM-DD HH:MM:SS) datetime (2007-05-08 12:35:29.123)  
  datetime2 (2007-05-08 12:35:29.1234567)  
  datetimeoffset (2007-05-08 12:35:29.1234567 +12:15)  

MySQL时间字段类型说明

# MySQL中,datetime和timestamp区别
/*
timestamp是4字节,表示时间范围
时间范围从1970-01-01 00:00:01到2038-01-19 03:14:07,存储的是从1970-01-01 00:00:00到特定时间的秒数,所以同一个时间戳 在不同时区的人看来表示的时间是不同的
​
datetime是8个字节,存储的就是时间的数字
范围围从1000-01-01 00:00:00到9999-12-31 23:59:59,可以表达的时间范围比较大,由于是直接存的时间数值,所以不同时区的人看到的是相同的时间
*/

Oracle时间类型字段说明

# Oracle中的时间类型只有datetimestamp两种类型,timestampdate更精确
# Oracle中timestampdate的区别
/*
都是表示年月日时分秒,但timestamp类型不仅可以保存日期和时间,还能保存小数位,小数位可以指定0-9,默认为6位
小数位,小数位可以指定0-9,默认为6位
*/

sqlserver时间字段说明

/*
time:12:35:29.1234567,仅存储时间。精度为 100 纳秒

date:仅存储日期。从 0001  1  1   9999  12  31 日。

smalldatetime:2007-05-08 12:35:00。从 1900  1  1   2079  6  6 日,精度为 1 分钟。

datetime:2007-05-08 12:35:29.123。从 1753  1  1   9999  12  31 日,精度为 3.33 毫秒。

datetime2:2007-05-08 12:35:29.1234567,从 1753  1  1   9999  12  31 日,精度为 100 纳秒。

datetimeoffset:2007-05-08 12:35:29.1234567 +12:15,与 datetime2 相同,外加时区偏移。
*/
 
posted @   无敌大牛牛  阅读(134)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示