触发器是一种数据库对象,可在表上的特定事件(插入、更新或删除)发生时自动执行 SQL 语句。其作用包括:维护数据完整性,确保表中数据符合特定规则自动执行任务,如发送电子邮件、更新其他表实现复杂的业务逻辑提高性能,避免重复执行相同任务
MySQL 触
发器的作用
MySQL 触发器是一种数据库对象,它允许在表上的特定事件(例如 INSERT、UPDATE 或 DELETE)发生时自动执行一组 SQL 语句。
触发器有哪些作用?
触发器有以下主要作用:
触发器的结构
一个触发器由以下部分组成:
使用触发器
要创建触发器,可以使用以下语法:
CREATE TRIGGER trigger_name BEFORE/AFTER [INSERT|UPDATE|DELETE] ON table_name FOR EACH ROW BEGIN -- 触发器代码 END;
示例
以下触发器确保表 users 中的 username 列始终唯一:
CREATE TRIGGER unique_username BEFORE INSERT ON users
FOR EACH ROW
BEGIN
IF EXISTS (SELECT 1 FROM users WHERE username = NEW.username) THEN
SIGNAL SQLSTATE '23000' SET MESSAGE_TEXT = 'Username already exists';
END IF;
END;