current_timeStamp不起作用

时间:2016-01-19 07:06:54

标签: mysql

我试过这段代码

CREATE TABLE users (
    userId INT PRIMARY KEY AUTO_INCREMENT NOT NUll,
    account VARCHAR(200) NOT NULL,
    password varchar(200) NOT Null,
    isActive varchar(10) NOT NUll,

    createdDate DATETIME DEFAULT CURRENT_TIMESTAMP() NOT NUll,
    updatedDate DATETIME 
);

但是会出现以下错误

1067 - 'createdDate'

的默认值无效

谢谢

3 个答案:

答案 0 :(得分:3)

仅使用CURRENT_TIMESTAMP代替CURRENT_TIMESTAMP()

CREATE TABLE users ( 
    userId INT PRIMARY KEY AUTO_INCREMENT NOT NUll, 
    account VARCHAR(200) NOT NULL, password varchar(200) NOT Null, 
    isActive varchar(10) NOT NUll,
    createdDate DATETIME DEFAULT CURRENT_TIMESTAMP NOT NUll,
   updatedDate DATETIME 
);
  

此外,您可以初始化或更新任何TIMESTAMP列   通过为其分配NULL值来指定当前日期和时间,除非它已经存在   使用NULL属性定义以允许NULL值。

如需更多知识,请点击链接http://dev.mysql.com/doc/refman/5.7/en/timestamp-initialization.html

答案 1 :(得分:0)

将数据类型datetime更改为timestamp它将起作用。

CREATE TABLE users ( userId INT PRIMARY KEY AUTO_INCREMENT NOT NUll, 
account VARCHAR(200) NOT NULL, 
password varchar(200) NOT Null, 
isActive varchar(10) NOT NUll,
createdDate **timestamp** DEFAULT CURRENT_TIMESTAMP() NOT NUll,
updatedDate DATETIME )

答案 2 :(得分:0)

尝试使用此代码,它应该可以正常工作。

WHERE NOT EXISTS