Mysql 我怎样才能加上?’;更新当前“U时间戳”时;在表创建时或通过alter table(未定义默认值)在列上
我使用下面的查询来更改一个表,并在更新当前时间戳时在列上添加Mysql 我怎样才能加上?’;更新当前“U时间戳”时;在表创建时或通过alter table(未定义默认值)在列上,mysql,Mysql,我使用下面的查询来更改一个表,并在更新当前时间戳时在列上添加 ALTER TABLE my_table CHANGE column_name column_name TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP // can I remove this line ON UPDATE CURRENT_TIMESTAMP; 从上面的查询中,我是否可以将放在列的更新当前时间戳上,而不定义其默认值 当我尝试删除该部分时,查询将如下所示: alter tabl
ALTER TABLE my_table CHANGE column_name column_name TIMESTAMP NOT NULL
DEFAULT CURRENT_TIMESTAMP // can I remove this line
ON UPDATE CURRENT_TIMESTAMP;
从上面的查询中,我是否可以将放在列的更新当前时间戳上,而不定义其默认值
当我尝试删除该部分时,查询将如下所示:
alter table new_table CHANGE updated_at updated_at TIMESTAMP ON UPDATE CURRENT_TIMESTAMP;
它显示错误:alter table new_table CHANGE updated_at updated_at TIMESTAMP ON UPDATE CURRENT_TIMESTAMP错误代码:1067。“updated_at”的默认值无效。如果您尝试,会发生什么?您不能在该实例中设置默认值,然后不设置默认值。表的当前定义是什么?新建表,创建表新建表(id
int(11)非空自动增量,在
日期时间默认当前时间戳创建,在
时间戳非空默认当前时间戳更新当前时间戳,主键(id
)引擎=InnoDB默认字符集=latin1
ALTER TABLE t1
MODIFY COLUMN c1
TIMESTAMP
NULL -- the opposite is NOT NULL, which is implicitly set on timestamp columns
DEFAULT NULL -- no default value for newly-inserted rows
ON UPDATE CURRENT_TIMESTAMP;