温馨提示×

如何在Mysql表中添加触发器

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

在MySQL表中添加触发器,您需要使用CREATE TRIGGER语句

  1. 打开MySQL客户端并选择您的数据库。
  2. 使用以下语法创建触发器:
DELIMITER //
CREATE TRIGGER trigger_name
BEFORE/AFTER INSERT/UPDATE/DELETE
ON table_name FOR EACH ROW
BEGIN
  -- 触发器逻辑
END;
//
DELIMITER ;
  • trigger_name:触发器的名称,用于标识触发器。
  • BEFORE/AFTER:指定触发器是在操作之前还是之后执行。
  • INSERT/UPDATE/DELETE:指定触发器关联的操作类型。
  • table_name:指定触发器关联的表。
  • FOR EACH ROW:表示触发器将对每一行进行操作。
  • BEGIN...END:包含触发器逻辑的代码块。
  1. 例子:

假设我们有一个名为students的表,结构如下:

CREATE TABLE students (
  id INT AUTO_INCREMENT PRIMARY KEY,
  name VARCHAR(50) NOT NULL,
  age INT NOT NULL,
  updated_at TIMESTAMP
);

现在,我们想在每次更新学生信息时自动更新updated_at字段。可以创建以下触发器:

DELIMITER //
CREATE TRIGGER update_student_timestamp
BEFORE UPDATE
ON students FOR EACH ROW
BEGIN
  SET NEW.updated_at = NOW();
END;
//
DELIMITER ;

这个触发器会在每次更新students表的记录之前自动执行,将updated_at字段设置为当前时间戳。

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

推荐阅读:如何删除Mysql表触发器

0