日常开发总结:MySQL函数:ON UPDATE CURRENT_TIMESTAMP 与 CURRENT_TIMESTAMP
如表的创建语句:重点在于updated_time
字段的函数
create table test(
id int,
`updated_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`created_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间'
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
当执行插入操作时:created_time
字段,则无论这个字段有没有set值,都插入当前系统时间 。
当执行更新操作时:updated_time
字段,它的值也会跟着更新为当前更新操作时的时间。但是如果更新语句里新set的字段值和当前记录里的值是一样的,就不会更新。你会发现执行更新后,该字段的值没变。