语法
alter table defaultTime alter column v set default CURRENT_TIMESTAMP;
实验
create table default_time_test(id int,v TIMESTAMP);
insert into default_time_test(id) values(1)
select * from default_time_test
update default_time_test set id = 2
发现是变了,这不是我想要的为什么呢?
CREATE TABLE `default_time_test` (
`id` int(11) NULL DEFAULT NULL,
`v` timestamp(0) NOT NULL DEFAULT CURRENT_TIMESTAMP(0) ON UPDATE CURRENT_TIMESTAMP(0)
)
看代码,发现这里有一个默认的触发器 on update current_timestamp
alter table default_time_test modify column v timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP;
update default_time_test set id = 3