原生的MySQL不支持使用函数DEFAULT(NOW()),但可以通过在应用程序中插入当前日期和时间。这种方法在你的应用中用于每次插入数据时。
示例代码:
INSERT INTO tableName (name, insert_time)
VALUES ('test', NOW());
另一种方法是创建一个触发器,它会在每次插入新数据时自动填充日期和时间字段。
示例代码:
CREATE TRIGGER before_insert_tablename
BEFORE INSERT ON tablename
FOR EACH ROW
SET NEW.insert_time = NOW();
在上述代码中,”tablename”是您要插入当前日期和时间的表的名称,”insert_time”是包含日期时间的列的名称。从现在开始,每次在表中插入新行时,”insert_time”列将自动填充当前日期和时间。
同时如果你想要用默认值的方式,MySQL支持从5.6.5版本开始,可以使用CURRENT_TIMESTAMP作为DEFAULT约束来实现对默认时间的控制:
CREATE TABLE tablename (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
insert_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
)
上述代码创建了一个名为”tablename”的表,”insert_time”字段的默认值为当前时间。每次插入新行,如果不明确为”insert_time”设置值,那么它将自动被设置为当前时间。
发布者:luotuoemo,转转请注明出处:https://www.jintuiyun.com/174696.html