Heim > Datenbank > MySQL-Tutorial > MySQL数据库时间类型的物理存储

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

WBOY
Freigeben: 2016-06-07 14:52:35
Original
1111 Leute haben es durchsucht

MySQL 数据库 时间类型 的物理存储的相关知识是本文我们主要要介绍的内容,接下来就让我们一起来了解一下这部分内容吧。 1.timestamp类型 在行数据中记录的是时间戳,四个字节,将四个字节的数据转换为整数就是从1970开始的秒数值 2.date类型 存储3个字节,

  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' 

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

  00001111     10110111    00100001

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

  3.year类型

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

  例如

  (gdb) p buf[33]  
  $7 = 112 'p' 

  表示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' 

  那么转换为(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数据库时间类型的物理存储的相关知识就介绍到这里了,希望本次的介绍能够对您有所收获!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage