请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

mysql中要设置一个和"timestamp"一样的时间,但默认值为null,应该用什么样的类型保持与“ timestamp”自动创建的时间格式一致?

正在回答 回答被采纳积分+3

3回答

廖师兄 2019-04-29 11:34:17

我这里是可以的,在mysql 5.7.23上执行,执行完毕后,表结构变成

CREATE TABLE `product_info` (
  `list_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '上架时间',
  `delist_time` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT '下架时间',
  `create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='商品表';
0 回复 有任何疑惑可以回复我~
提问者 HiPing 2019-04-28 12:47:14

CREATE TABLE `product_info` ( 

    `list_time` TIMESTAMP COMMENT '上架时间', 

    `delist_time` TIMESTAMP COMMENT '下架时间', 

    `create_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',

     `update_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP COMMENT '修改时间'

 ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='商品表';


0 回复 有任何疑惑可以回复我~
廖师兄 2019-04-28 12:26:04

我没有看懂你的问题

0 回复 有任何疑惑可以回复我~
  • 提问者 HiPing #1
    CREATE TABLE `product_info` (
       `list_time` TIMESTAMP  COMMENT '上架时间',
       `delist_time` TIMESTAMP  COMMENT '下架时间',
       `create_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
      `update_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP COMMENT '修改时间'
    ) ENGINE=InnoDB  DEFAULT CHARSET=utf8 COMMENT='商品表';
    
    
    如此创建表,如果执行的话,报错“Invalid default value for 'delist_time'”,上下架没有设定默认值,但我想让上下架的时间默认值为空,但格式又保持和创建时间(修改时间)的格式一样,也是"yyyy-MM-dd HH:mm:ss"的格式,我应该用什么样的类型去设置上下架的时间,并保持默认为空,并且时间格式也一致?
    回复 有任何疑惑可以回复我~ 2019-04-28 12:46:02
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信