温馨提示×

SQL命令CREATE TRIGGER怎么使用

sql
小亿
138
2023-10-20 00:00:17
栏目: 云计算

CREATE TRIGGER是用来创建触发器的SQL命令。

触发器是一种特殊的数据库对象,它可以在特定的数据库事件发生时自动执行一系列的SQL语句。触发器可以用于实现数据的自动更新、数据一致性的检查和维护、日志记录等功能。

CREATE TRIGGER的语法如下:

CREATE TRIGGER trigger_name

{BEFORE | AFTER} {INSERT | UPDATE | DELETE}

ON table_name

FOR EACH ROW

BEGIN

– 触发器执行的SQL语句

END;

其中,

  • trigger_name:触发器的名称。

  • BEFORE/AFTER:指定触发器是在触发事件之前还是之后执行。

  • INSERT/UPDATE/DELETE:指定触发器是在插入、更新还是删除数据时触发。

  • table_name:触发器所属的表名。

  • FOR EACH ROW:指定触发器是针对每个被影响的行触发,也就是说,当插入、更新或删除一行数据时,触发器会对该行数据进行处理。

触发器执行的SQL语句写在BEGIN和END之间,可以包含任意的SQL语句,如INSERT、UPDATE、DELETE、SELECT等。

以下是一个创建触发器的例子:

CREATE TRIGGER update_salary

AFTER UPDATE

ON employees

FOR EACH ROW

BEGIN

IF NEW.salary > 10000 THEN

INSERT INTO salary_history (employee_id, salary, updated_date)

VALUES (NEW.employee_id, NEW.salary, NOW());

END IF;

END;

以上例子创建了一个名为update_salary的触发器,当employees表中的数据更新后,如果新的薪水大于10000,触发器会将该员工的ID、薪水和更新日期插入到salary_history表中。

注意,触发器的创建需要具有足够的权限。

0