mysql datetime设置now()无效,直接用程序设置默认值比较好

时间:2023-11-25 00:01:26

mysql datetime设置now()无效的,没有此用法,datetime类型不能设置函数式默认值,只能通过触发器等来搞。
想设置默认值,只能使用timestamp类型,然后默认值设置为:CURRENT_TIMESTAMP

在MySQL5.0以上版本中也可以使用trigger来实现此功能。
create table test_time (
idint(11),
create_time datetime
);
delimiter |
create trigger default_datetime beforeinsert on test_time
foreach row
if new.create_time is null then
set new.create_time = now();
end if;|
delimiter ;

直接用程序设置默认值比较好