我正在使用以下脚本创建表
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';
但是仍然出现错误。有人可以指导。
答案 0 :(得分:0)
'如果TIMESTAMP或DATETIME列定义在任何地方都包含显式的小数秒精度值,则在整个列定义中必须使用相同的值' https://dev.mysql.com/doc/refman/5.7/en/timestamp-initialization.html