为了账号安全,请及时绑定邮箱和手机立即绑定

datetime字段默认值问题

DROP TABLE IF EXISTS `promo`;

CREATE TABLE `promo`  (

  `id` int NOT NULL,

  `promo_naem` varchar(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL DEFAULT '',

  `start_date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',

  `item_id` int NOT NULL DEFAULT 0,

  `promo_item_price` double NOT NULL DEFAULT 0,

  PRIMARY KEY (`id`) USING BTREE

) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_unicode_ci ROW_FORMAT = Dynamic;


SET FOREIGN_KEY_CHECKS = 1;


正在回答

1 回答

我也遇到了这个问题。目前是用下面回答中的默认值为:0000-01-01 00:00:00。设置成功的。但是想知道'0000-00-00 00:00:00'出错的原因

1 回复 有任何疑惑可以回复我~
#1

weixin_慕盖茨1370886

MYSQL 8之前的版本,datetime默认值可以设置为'0000-00-00 00:00:00'; 但是这在MYSQL 8中是不允许的,MYSQL 8的datetime的范围是‘1000-01-01 00:00:00’到'9999-12-31 23:59:59'之间,因此可以将默认值设置为‘1000-01-01 00:00:00’
2022-06-07 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

datetime字段默认值问题

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信