温馨提示×

curtime在MySQL触发器中的使用方法

小樊
85
2024-09-21 18:21:42
栏目: 云计算
亿速云mysql数据库,读写分离,安全稳定,弹性扩容,低至0.3元/天!! 点击查看>>

在MySQL中,CURTIME()函数返回当前日期和时间。在触发器中使用CURTIME()函数可以帮助您在插入或更新记录时自动填充当前时间戳。以下是如何在MySQL触发器中使用CURTIME()函数的示例:

  1. 创建一个名为my_table的表,其中包含id(主键)、namecreated_at字段:
CREATE TABLE my_table (
  id INT AUTO_INCREMENT PRIMARY KEY,
  name VARCHAR(255) NOT NULL,
  created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
);

在这个例子中,created_at字段默认值设置为CURRENT_TIMESTAMP,这意味着在插入新记录时,MySQL会自动填充当前时间戳。

  1. 创建一个名为before_insert_my_table的触发器,在插入新记录之前,将name字段和当前时间戳一起插入到my_table表中:
DELIMITER //
CREATE TRIGGER before_insert_my_table
BEFORE INSERT ON my_table
FOR EACH ROW
BEGIN
  SET NEW.name = CONCAT(NEW.name, ' ', CURTIME());
END;
//
DELIMITER ;

在这个例子中,我们创建了一个触发器,在插入新记录之前,将name字段和当前时间戳一起插入到my_table表中。注意,我们使用CONCAT()函数将name字段和当前时间戳连接在一起。

  1. 测试触发器:
INSERT INTO my_table (name) VALUES ('John');
INSERT INTO my_table (name) VALUES ('Jane');

当您插入新记录时,created_at字段将自动填充当前时间戳。

亿速云「云数据库 MySQL」免部署即开即用,比自行安装部署数据库高出1倍以上的性能,双节点冗余防止单节点故障,数据自动定期备份随时恢复。点击查看>>

推荐阅读:Flowable中MySQL触发器的使用方法

0