最近建表要用到时间类型的数据,但对时间类型的数据一向不了解,就总结了一下。。

一、日期DATE

一个日期。支持的范围是“1000-01-01”以“9999-12-31”。MySQL显示日期用 “YYYY-MM-DD”格式,但允许使用字符串或数字列赋值日期。

1.在一个字符串“YYYY-MM-DD”或“yy-mm-dd”格式。“不严格“语法是允许任何标点符号 字符可以作为之间的日期部分的分隔符。 为,“2012-12-31”,’2012 / 12 / 31’,2012 ^ 12 ^ 31,和2012 @ 12 @ 31和“2012-12-31”是等价的

 


2.作为一个没有任何分隔符的字符串“yyyymmdd”格式字符串,只要是有意义的日期。对于 例子,“20070523”和“070523”被解释为“2007-05-23”,但“071332”是非法的(无意义的 月日部分)则为“0000-00-00”。

二、日期时间DATETIME

·日期和时间的组合。支持的范围是“1000-01-0100:00:00”以“9999-12-31 23:59:59”。MySQL显示日期时间用'YYYY-MM-DD HH:MM:SS'格式,但允许使用字符串或数字列赋值日期时间。

· 1.允许“不严格”语法:任何标点符都可以用做日期部分或时间部分之间的间割符。例如,'98-12-31 11:30:45'、'98.12.3111+30+45'、'98/12/31 11*30*45'和'98@12@31 11^30^45'是等价的。

2.全为数字'19970523091528'和'970523091528'被解释为'1997-05-2309:15:28',但'971122129015'是不合法的  (它有一个没有意义的分钟部分),将变为'0000-00-00 00:00:00'。

  三、时间TIME

· 时间范围“838:59:59”以“838:59:59”。格式“hh:MM:ss”(或“HHH:MM:ss”格式)。时间值的范围可以从“838:59:59”以“838:59:59”。时间可能是如此之大 因为时间型不仅可用于代表一天中的时间(必须小于24小时),但还经过两个事件之间的时间或时间间隔(这可能远大于24小时,或甚至是负的)。

缩写“1112”和1112作为意义“11:12:00”(十一点后12分钟),但 MySQL它们解释为“00:11:12”(11 分钟,12秒)。同样,“12”和12被解释为“00:00:12”。

 

l  四、时间戳TIMESTAMP

1.时间戳范围“1970-01-01 00:00:01”——“2038-01-19 03:14:07”UTC。

   TIMESTAMP提供了自动 初始化和更新为当前的日期和时间。

TIMESTAMP和DATETIME比较:

这两个日期时间类型各有优点:datetime 的日期范围比较大;timestamp 所占存储空间比较小,只是 datetime 的一半。另外,timestamp 类型的列还有个特性:默认情况下,在 insert, update 数据时,timestamp 列会自动以当前时间(CURRENT_TIMESTAMP)填充/更新。“自动”的意思就是,你不去管它,MySQL 会替你去处理。

  cx

五、 YEAR类型

YEAR类型是一个单字节类型用于表示年。

MySQL以YYYY格式检索和显示YEAR值。范围是1901到2155。

可以指定各种格式的YEAR值:

· 四位字符串,范围为'1901'到'2155'。

· 四位数字,范围为1901到2155。

· 两位字符串,范围为'00'到'99'。'00'到'69'和'70'到'99'范围的值被转换为2000到2069和1970到1999范围的YEAR值。

· 两位整数,范围为1到99。1到69 被转换为2001到2069

70到99范围的值被转换为1970到1999范围的YEAR值。

请注意两位整数范围与两位字符串范围稍有不同,因为你不能直接将零指定为数字并将它解释为2000。你必须将它指定为一个字符串'0'或'00'或它被解释为0000。

·函数返回的结果,其值适合YEAR上下文,例如NOW()。

非法YEAR值被转换为0000。

总的格式表:

  DATATYPE     VALUE

         DATE

         '0000-00-00'

         TIME                       

         '00:00:00'

         DATETIME

        '0000-00-00 00:00:00'

         TIMESTAMP

        '0000-00-00 00:00:00'

          YEAR

         0000

 

MySql中时间类型总结的更多相关文章

  1. mysql中时间类型datetime,timestamp与int的区别

    在mysql中存储时间,我们可以用datetime 格式,timestamp格式,也可以用int格式.那么我们设计的时候该如何考虑呢? 首先,我觉得应该明白这几个格式究竟是如何的,然后看看他们的区别, ...

  2. java中存储mysql数据库时间类型

    Mysql 与 java 的时间类型 MySql的时间类型有 Java中与之对应的时间类型   date                 java.sql.Date   Datetime        ...

  3. java中存储mysql数据库时间类型【date、time、datetime、timestamp】

    在MySQL中对于时间的存储自己见表的时候都是设置的varchar类型的,感觉挺方便的. 昨天拿别人建好的表写代码,发现这张表中时间类型为datetime的,凭感觉试了一下不行,网上查了刚开始试了好几 ...

  4. 关于Java读取mysql中date类型字段默认值'0000-00-00'的问题

    今天在做项目过程中,查询一个表中数据时总碰到这个问题:      java.sql.SQLException:Value '0000-00-00' can not be represented as ...

  5. mysql中时间日期函数

    转自:mysql 中 时间和日期函数 一.MySQL 获得当前日期时间 函数 1.1 获得当前日期+时间(date + time)函数:now() mysql> select now(); +- ...

  6. 解决python写入mysql中datetime类型遇到的问题

    解决python写入mysql中datetime类型遇到的问题 刚开始使用python,还不太熟练,遇到一个datetime数据类型的问题: 在mysql数据库中,有一个datetime类型的字段用于 ...

  7. MYSQL中TIMESTAMP类型的默认值理解

    MYSQL中TIMESTAMP类型可以设定默认值,就像其他类型一样. 1.自动UPDATE 和INSERT 到当前的时间:表:----------- Table   Create Table      ...

  8. 一天五道Java面试题----第九天(简述MySQL中索引类型对数据库的性能的影响--------->缓存雪崩、缓存穿透、缓存击穿)

    这里是参考B站上的大佬做的面试题笔记.大家也可以去看视频讲解!!! 文章目录 1.简述MySQL中索引类型对数据库的性能的影响 2.RDB和AOF机制 3.Redis的过期键的删除策略 4.Redis ...

  9. MYSQL中 ENUM 类型

    MYSQL中 ENUM 类型的详细解释 ENUM类型 ENUM 是一个字符串对象,其值通常选自一个允许值列表中,该列表在表创建时的列规格说明中被明确地列举. 在下列某些情况下,值也可以是空串(&quo ...

随机推荐

  1. 动态密码卡TOTP算法

    TOTP NET实现:http://googleauthcsharp.codeplex.com/ 引用:http://www.cnblogs.com/wangxin201492/p/5030943.h ...

  2. 【Thinking in Java-CHAPTER 3】操作符

    优先级 赋值 对象在使用c=d,那么c和d都指向原本只有d指向的那个对象. 方法调用中的别名问题:当一个对象作为参数传递到一个函数中,函数改变了这个参数,则改变了传递进来的对象: 自增和自减 浮点型的 ...

  3. VS错误 error LNK1158: 无法运行“cvtres.exe”

    1.删除文件 2.如果删除不掉 右键属性 - 安全 - 高级 - 所有者 - 确定 右键属性 - 安全 - 编辑 - 开通权限

  4. hdu 2014鞍山赛区 5073 Galaxy

    题意:就是给你 n 个数,代表n个星球的位置,每一个星球的重量都为 1 ! 开始的时候每一个星球都绕着质心转动,那么质心的位置就是所有的星球的位置之和 / 星球的个数 现在让你移动 k 个星球到任意位 ...

  5. CentOS6.5菜鸟之旅:U盘安装CentOS64位

    一.前言 之前下载了个CentOS7 32位版,一下就安装成功了,但由于其目录结构等与之前的CentOS版本有很大的不同,加上教程不多不利于我这种菜鸟学习,于是决定重装CentOS6.5来学习.本篇用 ...

  6. OAuth授权过程

    什么是OAuth授权? 一.什么是OAuth协议 OAuth(开放授权)是一个开放标准,所谓OAuth(即Open Authorization,开放授权),它是为用户资源授权提供了一种安全简单的标准, ...

  7. AFNetworking 原作者都无法解决的问题: 如何使用ip直接访问https网站?

    背景 最近App似乎有报异常是DNS无法解析,尝试解决此问题.搜集到的资料很少,甚至连AFN原作者都判定这可能是一个无解的问题,参见: https://github.com/AFNetworking/ ...

  8. BAT及各大互联网公司前端笔试面试题--Html,Css篇

    注意 转载须保留原文链接(http://www.cnblogs.com/wzhiq896/p/5931347.html )作者:wangwen896 整理分享出来希望更多的前端er共同进步吧,不仅适用 ...

  9. 【EF 译文系列】韧性连接、重试(EF 版本至少为 6)

    原文链接:Connection Resiliency / Retry Logic (EF6 onwards) 一个应用程序的数据库连接,是非常容易受其它因素影响的,比如后端的异常或者不稳定的网络连接等 ...

  10. 新的Visual C++代码优化器

    微软在 5 月 4 日发布了新的高级代码优化器,服务于 Visual C++ 的后端编译器.提高了代码性能,可以压缩代码体积,将编译器带入了一个新的境界. Visual C++ 的团队在博客上称,这将 ...