【问题标题】:MySQL said: Documentation #1067 - Invalid default value for 'regdate' [duplicate]MySQL 说:文档 #1067 - 'regdate' 的默认值无效 [重复]
【发布时间】:2016-04-27 14:55:54
【问题描述】:

我有一个问题:

CREATE TABLE IF NOT EXISTS `o7xn5_tbl_service` (
`ID` int( 11 ) NOT NULL AUTO_INCREMENT ,
`firstname` varchar( 20 ) NOT NULL ,
`lastname` varchar( 20 ) NOT NULL ,
`idnumber` varchar( 15 ) NOT NULL ,
`position` varchar( 50 ) NOT NULL ,
`phone` varchar( 13 ) NOT NULL ,
`email` varchar( 50 ) NOT NULL ,
`building` varchar( 50 ) NOT NULL ,
`department` varchar( 50 ) NOT NULL ,
`problemtype` varchar( 100 ) NOT NULL ,
`description` varchar( 500 ) NOT NULL ,
`regdate` datetime DEFAULT CURRENT_TIMESTAMP ,
PRIMARY KEY ( `ID` )
) ENGINE = InnoDB DEFAULT CHARSET = latin1 AUTO_INCREMENT = 19;

MySQL 报错:

文档 #1067 - 'regdate' 的默认值无效

什么意思?

【问题讨论】:

  • 如果你想要 CURRENT_TIMESTAMP 而不是为你的列选择时间戳数据类型,或者只想使用 DATETIME 而不是使用默认的 null 或任何有效格式
  • 问题在哪里?不清楚??

标签: php mysql


【解决方案1】:

datetime 列不能有 CURRENT_TIMESTAMP 默认值。

只有timestamp 列可以拥有它。

改变

`regdate` datetime DEFAULT CURRENT_TIMESTAMP ,

`regdate` TIMESTAMP DEFAULT CURRENT_TIMESTAMP ,

【讨论】:

    猜你喜欢
    • 2019-02-28
    • 2018-07-06
    • 2020-12-01
    • 2014-12-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-21
    相关资源
    最近更新 更多