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

How to set default value of MySQL DateTime ( not TIMESTAMP ) to NOW() or Current_DateTIme?

本问题已经有最佳答案,请猛点这里访问。

Possible Duplicate:
How do you set a default value for a MySQL Datetime column?

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

我现在尝试了()和currentTimestamp,但到目前为止还没有运气!!!!


只能在表定义中设置静态默认值。所以除非你想每分钟打电话给ALTER TABLE……

使用触发器:

1
2
3
4
5
6
7
8
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


我认为你不能用日期时间来完成它。

请参见:如何设置mysql datetime列的默认值?