• timestamp


    use database_name;
    
    --
    --  namespace table
    --
    
    CREATE TABLE `table_name`
    (
        `id`          int(11)      NOT NULL AUTO_INCREMENT,
        `name`        varchar(128) NOT NULL COMMENT '名字',
        `create_time` timestamp    NOT NULL COMMENT '创建时间',
        `update_time` timestamp    DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
        PRIMARY KEY (`id`),
        UNIQUE KEY `uk_name` (`name`)
    ) ENGINE = InnoDB
      DEFAULT CHARSET = utf8 COMMENT ='table_name'
      AUTO_INCREMENT = 1;

    ######上面的建表语句不会成功执行,需要修改成下面这样的,原因是因为timestamp类型的字段与CURRENT_TIMESTAMP

    use database_name;
    
    --
    --  namespace table
    --
    
    CREATE TABLE `table_name`
    (
        `id`          int(11)      NOT NULL AUTO_INCREMENT,
        `name`        varchar(128) NOT NULL COMMENT '名字',
        `create_time` timestamp     NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT '创建时间',
        `update_time` timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
        PRIMARY KEY (`id`),
        UNIQUE KEY `uk_name` (`name`)
    ) ENGINE = InnoDB
      DEFAULT CHARSET = utf8 COMMENT ='table_name'
      AUTO_INCREMENT = 1;

     ##########################################################################################################

    而在mysql5.7中,如果你按照mysql5.5中那样默认设置timestamp字段默认值,则可能会有问题,与sql_mode有关。

    sql_mode=‘STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION’
    
    如果 `create_time` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT '创建时间',这样的语句保持不变的话,那么就需要改变全局变量sql_mode的值,去掉NO_ZERO_IN_DATE,NO_ZERO_DATE这两个约束。
    
    sql_mode=‘STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION’
    # 修改集群上的每个机器线上的sql_mode,同时需要修改配置文件。
  • 相关阅读:
    Js实现页面跳转的几种方式
    android给View设置上下左右边框
    mac下安装tomcat
    Series.str方法
    loc() iloc() at() iat()函数
    sudo: pip:找不到命令
    杀死进程方法
    unique()与nunique()
    object数据类型
    set_index()与reset_index()函数
  • 原文地址:https://www.cnblogs.com/igoodful/p/11684226.html
Copyright © 2020-2023  润新知