MySQL设置默认时间值
复制代码代码如下所示:
create_time DateTime默认现在()
无法在表单中设置默认值。
另一种方法是使用时间戳类型而不是datetime类型。
current_timestamp:这场本记录不会改变当我更新记录。
更新current_timestamp current_timestamp:这一领域的这个记录会改变当我更新此记录。时间变化时间更新时间。(注意更新设置列为其存在的价值,不会造成时间戳列进行更新,因为如果你设置列为其当前值,MySQL忽略的变化效率。)如果有多个时间戳列,只有第一个自动更新。
时间戳列类型自动标记当前日期和时间的插入或更新操作。
如果有多个时间戳列,则只有第一个自动更新。
第一个时间戳列的自动更新发生在下列任何一种情况中:
该列的值不在插入或LOAD DATA INFILE语句显式指定。
列值不是在一个UPDATE语句中显式指定的,而其他列则更改它们的值(请注意,更新将列设置为其现有值,这不会导致时间戳列被更新,因为如果将列设置为当前值,MySQL将忽略效率的变化。)
您显式地将时间戳列设置为null。
时间戳列,除了第一个,也可以设置为当前日期和时间,只要列设置为null,或者现在()。
此外,触发器还可以用于在5多个版本中实现此功能。
复制代码代码如下所示:
创建表test_time(
id int(11),
create_time DateTime
);
Delimiter |
创建触发器在test_time之前default_datetime
每一行
如果new.create_time为null,然后
集new.create_time =现在();
如果|结束;
Delimiter;