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

一、日期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 被转换为20012069

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. 【转】BUFFER CACHE WAIT EVENTS

    文章转自:http://oracleinaction.com/buffer-cache-wait-events/

  2. 简单设置 navgationbar(导航栏) 的 title 字体跟颜色

    NSDictionary *navbarTitleTextAttributes = [NSDictionary dictionaryWithObjectsAndKeys: [UIColor white ...

  3. 【转载】Ubuntu下SVN安装和配置

    一.SVN安装 1.安装包 1.$ sudo apt-get install subversion 2.创建项目目录 $ sudo mkdir /home/xiaozhe/svn $ cd /home ...

  4. [转载]AxureRP 7超强部件库下载

    很多刚刚开始学习Axure的朋友都喜欢到网上搜罗各种部件库(组件库)widgets library ,但是网络中真正实用的并且适合你使用的少之又少,最好的办法就是自己制作适合自己工作内容的部件库. 这 ...

  5. iOS-分段控制器-基本概念

    可以直接复制使用 #import "FirstViewController.h" #import "Masonry.h" @interface FirstVie ...

  6. CSS布局 -- 左右定宽,中间自适应

    左右定宽,中间自适应 有几种方法可以实现 改变窗口大小看看? 方案一: 左右设置绝对定位,定宽,中间设置margin-left  margin-right 查看 demo <!DOCTYPE h ...

  7. 了解 JS 作用域与作用域链

    (1)作用域 一个变量的作用域(scope)是程序源代码中定义的这个变量的区域. 1. 在JS中使用的是词法作用域(lexical scope) 不在任何函数内声明的变量(函数内省略var的也算全局) ...

  8. 双系统Ubuntu无法访问windows磁盘分区解决方法

    为了更好的体验各种操作系统,在电脑中安装双系统是很好的选择,但在使用中难免会遇到这样或那样的问题. 最近总是遇到Ubuntu系统下无法访问windows磁盘分区问题,看了系统日志发现是挂载磁盘出问题了 ...

  9. iOS7 UI兼容 导航栏按钮边框 UINavigationItem left and right padding

    iOS7之前的UI为: 而在iOS7中,由于设计方面的原因,使得UI变为: 修改的方法重写UINavigationItem的setLeftBarButtonItem和setRightBarButton ...

  10. jquery ajax跨域访问webservice配置

    1.webservice方法 [System.Web.Script.Services.ScriptService] public class TestService : System.Web.Serv ...