2016-07-22 78 views
-1

我想用下面的脚本创建一个表,并得到错误 错误代码:1067.'LAST_MODIFIED_TS'的默认值无效。MySql 5.7时间戳工作在Windows但不是在Linux上

在我对5.6之后的理解中,您可以创建多个时间戳列,也不需要提供默认值。另一件事是它不是在它之前的一条线上的Created_TS上进行狙击。

而且同一个脚本在Windows上运行,但不能在Linux操作系统Ubuntu,他们两个运行的MySQL版本是5.7

CREATE TABLE testdb.test (
    ID BIGINT NOT NULL AUTO_INCREMENT, 
    DESCRIPTION VARCHAR(300) NOT NULL, 
    CREATED_TS TIMESTAMP NOT NULL, 
    LAST_MODIFIED_TS TIMESTAMP NOT NULL, 
    PROPERTY_TYPE VARCHAR(1) DEFAULT 'S', 
    last_modified timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, 
    CONSTRAINT test_pk PRIMARY KEY 
     (ID)) ENGINE=InnoDB ; 
+1

这适用于SQL小提琴:http://www.sqlfiddle.com/#!9/88c649。 –

+0

正如我所说,我自己可以在Windows上运行,但不能在linux上运行 – developer2015

回答

相关问题