我在考虑这样的事情:
`post_modified` int(11) NOT NULL DEFAULT UNIX_TIMESTAMP (NOW ()) ON UPDATE UNIX_TIMESTAMP (NOW ()),
但是这段代码无效。
答案 0 :(得分:5)
没有你在展示时不能使用它。
来自MySql上的数据类型文档:
“默认值必须是常量;它不能是函数或表达式。例如,这意味着您不能将日期列的默认值设置为函数的值,例如NOW()或CURRENT_DATE。例外情况是您可以将CURRENT_TIMESTAMP指定为TIMESTAMP列的默认值。“
请看下面的解决方法:
Is it possible to create a column with a UNIX_TIMESTAMP default in MySQL?
希望这会有所帮助!
答案 1 :(得分:4)
注意:我不知道 MYSQL TRIGGER的表现
请浏览这些链接
您可以为此创建触发器。
用于插入
CREATE TRIGGER {trigger_name} BEFORE INSERT ON {table_name} FOR EACH ROW SET new.{field_name} = UNIX_TIMESTAMP(NOW());
更新
CREATE TRIGGER {trigger_name} BEFORE UPDATE ON {table_name} FOR EACH ROW SET new.{field_name} = UNIX_TIMESTAMP(NOW());