Heim > Datenbank > MySQL-Tutorial > Mysql中触发器的使用

Mysql中触发器的使用

WBOY
Freigeben: 2016-06-07 14:50:38
Original
1102 Leute haben es durchsucht

概念 触发器是一种特殊的事务,它监听增删改操作,并触发增删改操作。主要是用来处理一些比较复杂的业务逻辑以保证数据的联动性。其包含了四要素:1.监视地点(table) 2.监视事件(insert/update/delete) 3.触发时间(after/before) 4.触发事件(insert/update/d

概念

触发器是一种特殊的事务,它监听增删改操作,并触发增删改操作。主要是用来处理一些比较复杂的业务逻辑以保证数据的联动性。其包含了四要素:1.监视地点(table) 2.监视事件(insert/update/delete) 3.触发时间(after/before) 4.触发事件(insert/update/delete)

语法

<code class=" hljs sql">
<span class="hljs-operator"><span class="hljs-keyword">CREATE</span> <span class="hljs-keyword">TRIGGER</span> <span class="hljs-string">'触发器名称'</span> <span class="hljs-string">'触发时间(after|before)'</span> <span class="hljs-string">'监听的事情(insert|update|delete) '</span>
<span class="hljs-keyword">ON</span> <span class="hljs-string">'触发地点'</span> <span class="hljs-keyword">FOR</span> <span class="hljs-keyword">EACH</span> <span class="hljs-keyword">ROW</span> 
<span class="hljs-keyword">BEGIN</span>
  sql1;</span>
  sql2;
  sql3;
<span class="hljs-operator"><span class="hljs-keyword">END</span>$</span></code>
Nach dem Login kopieren

FOR EACH ROW 用来标识触发器的类型,因为Mysql支持行级别的触发器,不支持语句触发器,故只能使用FOR EACH ROW 。因为触发器中使用’;’区分多个事件语句,故需要重新定义定界符。

实例

修改定界符为$
这里写图片描述
创建触发器
这里写图片描述
查看触发器
这里写图片描述
执行操作之前
t4表数据如下
这里写图片描述
t3表数据如下
这里写图片描述
执行相应的操作之后
这里写图片描述

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage