zoukankan      html  css  js  c++  java
  • 列类型-日期时间型

    日期时间型

    日期时间型数据,顾名思义,就是用来表示日期和时间的数据类型,共有五种类型,分别为:

    • datetime:日期时间,其格式为yyyy-MM-dd HH:mm:ss,表示的范围是从 1000 年到 9999 年,有零值,即0000-00-00 0000:00
    • date:日期,就是datetimedate部分;
    • time:时间,或者说是时间段,为指定的某个时间区间之间,包含正负时间;
    • timestamp:时间戳,但并不是真正意义上的时间戳,其是从1970年开始计算的,格式和datetime一致;
    • year:年份,共有两种格式,分别为year(2)year(4).

    执行如下 SQL 语句创建日期时间表,进行测试:

    -- 创建日期时间表
    create table my_date(
    	d1 datetime,
    	d2 date,
    	d3 time,
    	d4 timestamp,
    	d5 year
    )charset utf8;
    

    当咱们插入数据时,日期时间型中的time,可以为负数,甚至可以是很大的负数;year,可以使用 2 位数据插入,也可以使用 4 位数据插入;timestamp,只要当前所在的记录被更新,该字段就会自动更新为当前时间,且时间戳类型默认为非空的。

    -- 插入测试数据
    insert into my_date values ('2017-05-06 13:15:00','2017-05-06','13:15:00','2017-05-06 13:15:00',2017);
    insert into my_date values ('2017-05-06 13:15:00','2017-05-06','-113:15:00','2017-05-06 13:15:00',69);
    insert into my_date values ('2017-05-06 13:15:00','2017-05-06','-2 13:15:00','2017-05-06 13:15:00',70);
    

    create-table-mydate

    如上图所示,以上 3 条记录已经插入成功,接下来,咱们再来验证更新记录时,时间戳类型的字段d4是否会自动更新:

    -- 更新记录,验证时间戳类型的字段是否会自动更新
    update my_date set d1 = '2017-05-06 13:24:00' where d5 = 1970;
    

    update-mydate

    如上图所示,显然咱们的结论全部得到了验证。

  • 相关阅读:
    JZOJ 3034. 【NOIP2012模拟10.17】独立集
    JZOJ 3035. 【NOIP2012模拟10.17】铁轨
    JZOJ 1259. 牛棚安排
    数位DP JZOJ 3316. 非回文数字
    JZOJ 3046. 游戏
    JZOJ 3013. 填充棋盘
    debian 安装oracle提供的java8
    java 汉字转拼音 PinYin4j
    debian ssh设置root权限登陆 Permission denied, please try again
    java并发下订单生成策略
  • 原文地址:https://www.cnblogs.com/pscly/p/11383700.html
Copyright © 2011-2022 走看看