我正在尝试使用MariaDB库创建一个包含仅包含当前日期而非时间戳的列的表。哪个命令将列的内容设置为创建表时的当前日期?
答案 0 :(得分:1)
为什么在桌面上创建,因为没有数据,如果你需要一个日期而不是日期时间添加到代码,在添加触发器之前WELL,将业务逻辑保留在业务层而不是存储层。
不是你对具体问题的确切答案,但希望有用的建议,顺便说一句我不喜欢触发器,所以有点偏颇
答案 1 :(得分:0)
MariaDB在10.0.1中为DEFAULTs
引入了DATETIME
。
见worklog。它是在MySQL 5.6.5 feature之后形成的,它有例子。
如果您只想默认为CURDATE()
,我认为您在MariaDB和MySQL中运气不佳。
BEFORE INSERT
TRIGGER
SET NEW.datetime_col = CURDATE()
应该为您提供功能:
CREATE TRIGGER set_date BEFORE INSERT ON tbl
FOR EACH ROW SET NEW.datetime_col = CURDATE();