MySQL触发器详解
Posted jkin
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL触发器详解相关的知识,希望对你有一定的参考价值。
MySQL触发器
触发器是特殊的存储过程。不同的是,触发器不需要手动调用。只要当预定义的事件发生时,会被mysql自动调用。主要用于满足复杂业务的规则和需求。
一、创建触发器
1、创建只有一个执行语句的触发器,语法如下:
CREATE TRIGGER trigger_name trigger_time trigger_event ON tab_name FOR EACH ROW trigger_stmt
其中,trigger_name是标识触发器名称。trigger_time指定触发时机,可以指定before或after。trigger_event标识触发事件,包括INSERT、UPDATE、和DELETE;tab_name标识建立触发器的表名,即在哪张表上建立触发器。trigger_stmt是触发器执行的语句。
例:
CREATE TABLE account (acct_num int, amount DECIMAL(10,2)); CREATE TRIGGER ins_sum BEFORE INSERT on account FOR EACH ROW SET @sum = @sum + NEW.amount;
首先创建一个表account。在向表插入数据前,计算所有新插入的account表的amount值和。
说明:在MySQL中用old
和new
表示执行前和执行后的数据,old
和new在oracle中
表示执行前的行,和执行后的行。
以上是关于MySQL触发器详解的主要内容,如果未能解决你的问题,请参考以下文章