我想用下面的脚本创建一个表,并得到错误 错误代码: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 ;
这适用于SQL小提琴:http://www.sqlfiddle.com/#!9/88c649。 –
正如我所说,我自己可以在Windows上运行,但不能在linux上运行 – developer2015