加入收藏 | 设为首页 | 会员中心 | 我要投稿 草根网 (https://www.1asp.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 教程 > 正文

MySQL 触发器示例

发布时间:2022-12-15 11:00:24 所属栏目:教程 来源:
导读:  在本文中,您将学习如何使用 MySQL CREATE TRIGGER语句在数据库中创建触发器。

  MySQL CREATE TRIGGER语句介绍

  该CREATE TRIGGER语句创建一个新触发器。以下是该CREATE TRIGGER语句的基本语法:
  在本文中,您将学习如何使用 MySQL CREATE TRIGGER语句在数据库中创建触发器。
 
  MySQL CREATE TRIGGER语句介绍
 
  该CREATE TRIGGER语句创建一个新触发器。以下是该CREATE TRIGGER语句的基本语法:
 
  mysql事物触发存储过程_mysql触发器_示波器内触发和外触发
 
  在这种语法中:
 
  然后,指定激活触发器的操作,可以是INSERT、UPDATE或DELETE。
 
  触发器主体可以访问受 DML 语句影响的列的值。
 
  要区分列的值BEFORE和AFTER已触发的 DML,请使用NEWandOLD修饰符。
 
  例如,如果您更新列描述,则在触发器正文中,您可以访问更新前的描述OLD.description值和新值NEW.description。
 
  下表说明了OLDandNEW修饰符的可用性:
 
  触发事件
 
  OLD
 
  NEW
 
  INSERT
 
  不
 
  是的
 
  UPDATE
 
  是的
 
  是的
 
  DELETE
 
  是的
 
  不
 
  MySQL 触发器示例
 
  让我们开始在 MySQL 中创建一个触发器来记录employees表的更改。
 
  示波器内触发和外触发_mysql触发器_mysql事物触发存储过程
 
  首先,创建一个名为employees_audit以保留对表的更改的新employees表:
 
  mysql触发器_mysql事物触发存储过程_示波器内触发和外触发
 
  接下来mysql触发器,创建一个在对表BEFORE UPDATE进行更改之前调用的触发器。employees
 
  mysql触发器_示波器内触发和外触发_mysql事物触发存储过程
 
  在触发器的主体内,我们使用OLD关键字来访问受触发器影响的列employeeNumber 和行的值。lastname
 
  然后,使用以下SHOW TRIGGERS语句显示当前数据库中的所有触发器:
 
  此外,如果您使用 MySQL Workbench 在employees > triggers下查看架构,您将看到 before_employee_update如下屏幕截图所示的触发器:
 
  mysql触发器_示波器内触发和外触发_mysql事物触发存储过程
 
  之后,更新employees表中的一行:
 
  mysql事物触发存储过程_示波器内触发和外触发_mysql触发器
 
  最后,查询employees_audit表以检查触发器是否被UPDATE语句触发:
 
  下面显示了查询的输出:
 
  employees_audit从输出中可以清楚地看到,触发器被自动调用并在表中插入了一个新行。
 

(编辑:草根网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章