错误 1067 'created_at' 的默认值无效

ERROR 1067 Invalid defaul value for 'created_at'

我正在使用以下脚本创建 table

CREATE TABLE `ninjapizza`.`products` (
  `ID` INT NOT NULL AUTO_INCREMENT,
  `Name` VARCHAR(45) NULL,
  `description` VARCHAR(45) NULL,
  `email` VARCHAR(45) NULL,
  `created_on` TIMESTAMP(2) NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`ID`));

但是在应用时我收到以下消息

Operation failed: There was an error while applying the SQL script to the database.
Executing:
CREATE TABLE `ninjapizza`.`products` (
  `ID` INT NOT NULL AUTO_INCREMENT,
  `Name` VARCHAR(45) NULL,
  `description` VARCHAR(45) NULL,
  `email` VARCHAR(45) NULL,
  `created_on` TIMESTAMP(2) NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`ID`));

ERROR 1067: Invalid default value for 'created_on'
SQL Statement:
CREATE TABLE `ninjapizza`.`products` (
  `ID` INT NOT NULL AUTO_INCREMENT,
  `Name` VARCHAR(45) NULL,
  `description` VARCHAR(45) NULL,
  `email` VARCHAR(45) NULL,
  `created_on` TIMESTAMP(2) NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`ID`))

下面的命令我也执行过

SET sql_mode = 'ALLOW_INVALID_DATES';

但仍然出现错误。有人可以指导一下吗

'If a TIMESTAMP or DATETIME column definition includes an explicit fractional seconds precision value anywhere, the same value must be used throughout the column definition' https://dev.mysql.com/doc/refman/5.7/en/timestamp-initialization.html

参见https://www.db-fiddle.com/f/sNoeVP5PATCsGxhVw2vPki/0