如何将MySQL DateTime(不是TIMESTAMP)的默认值设置为NOW()或Current_DateTIme?

时间:2011-06-08 19:02:38

标签: mysql datetime

  

可能重复:
  How do you set a default value for a MySQL Datetime column?

我有一个包含数据类型为datetime的CreatedDate列的表,我希望能够将其默认值设置为当前DateTime我该怎么做?

我尝试了Now()和CurrentTimestamp但到目前为止没有运气!!!

2 个答案:

答案 0 :(得分:5)

您只能在表格定义中设置静态默认值 所以,除非你想每分钟拨打ALTER TABLE ....

使用触发器:

DELIMITER $$

CREATE TRIGGER bu_table1_each BEFORE UPDATE ON table1 FOR EACH ROW
BEGIN
  SET new.datefield = NOW();
END $$

DELIMITER ;

请参阅:http://dev.mysql.com/doc/refman/5.5/en/triggers.html

答案 1 :(得分:1)

我认为你不能用DateTime来做。

请参阅:How do you set a default value for a MySQL Datetime column?