MySQL数据库时间类型的物理存储

数据库 MySQL
本文我们主要介绍了MySQL数据库时间类型的物理存储的相关知识,包括timestamp类型、date类型、year类型和datetime类型的相关知识,希望能够对您有所帮助。

MySQL数据库时间类型的物理存储的相关知识是本文我们主要要介绍的内容,接下来就让我们一起来了解一下这部分内容吧。

1.timestamp类型

在行数据中记录的是时间戳,四个字节,将四个字节的数据转换为整数就是从1970开始的秒数值

2.date类型

存储3个字节,例如,若行中记录的是:

 

(gdb) p buf[30]  
$4 = 33 '!'  
(gdb) p buf[31]  
$5 = -73 '�'  
(gdb) p buf[32]  
$6 = 15 '\017' 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.

 

表示为三个字节的二进制:

00001111     10110111    00100001

其中,1-5位表示日期,6-9位表示月份,剩余的表示年份,因此上述date类型可转换为2011-09-01

3.year类型

记录年份,用一个字节记录,从1900年开始

例如

 

(gdb) p buf[33]  
$7 = 112 'p' 
  • 1.
  • 2.

 

表示112+1900 = 2012年

4.datetime

8个字节表示,例如输入为:2011-08-27 19:32:46

 

(gdb) p buf[30]  
$122 = -98 '\236'  
(gdb) p buf[31]  
$123 = 3 '\003'  
(gdb) p buf[32]  
$124 = -74 '�'  
(gdb) p buf[33]  
$125 = 106 'j'  
(gdb) p buf[34]  
$126 = 74 'J'  
(gdb) p buf[35]  
$127 = 18 '\022'  
(gdb) p buf[36]  
$128 = 0 '\0'  
(gdb) p buf[37]  
$129 = 0 '\0' 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.

 

那么转换为(256-98) + 3*256 +  (256-74) * 256 * 256 + 106 * 256 * 256 * 256 + 74 * 256 * 256 * 256*256 + 18 * 256 * 256 * 256 * 256*256

计算结果为:20110827193246, 与输入的日期相对应!

关于MySQL数据库时间类型的物理存储的相关知识就介绍到这里了,希望本次的介绍能够对您有所收获!

【编辑推荐】

 

  1. MySQL数据库mysqlcheck的使用方法详解
  2. Linux cron执行MySQL失败的问题解决方案
  3. MySQL数据库TIMESTAMP设置默认值的灵活运用
  4. MySQL性能优化之使用Limit关键字来避免全表扫描
  5. MySQL数据库TIMESTAMP设置默认值的几个应用实例
责任编辑:赵鹏 来源: CSDN博客
相关推荐

2011-08-03 13:28:08

Oracle数据库数据库控制文件

2010-05-31 10:09:16

MySQL数据库

2023-01-18 08:25:23

数据库存储类型

2010-09-09 08:42:28

MongoDB

2018-05-02 08:48:58

Raid存储MySQL

2010-04-15 13:01:25

Oracel数据库

2010-10-14 13:18:55

MySQL存储过程

2018-12-17 12:12:43

Netflix数据库存储

2018-11-12 15:15:32

MySQL数据库命令

2019-06-20 15:25:14

MySQLL数据库存储

2010-06-02 11:24:57

MySQL数据库主键

2010-06-04 15:32:18

MySQL数据库

2019-08-27 15:00:09

MySQL数据库存储

2010-05-21 10:22:37

MySQL数据库

2022-07-03 06:10:15

MySQL数据库

2009-11-19 17:25:12

Oracle数据库物理

2021-09-28 09:25:05

NoSQL数据库列式数据库

2018-11-05 15:14:42

MySQL编程语言技术

2011-05-26 13:07:29

数据库切换故障转移

2011-08-05 16:32:29

MySQL数据库ENUM类型
点赞
收藏

51CTO技术栈公众号