首頁 > 資料庫 > mysql教程 > Mysql中触发器的使用

Mysql中触发器的使用

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
發布: 2016-06-07 14:50:38
原創
1135 人瀏覽過

概念 触发器是一种特殊的事务,它监听增删改操作,并触发增删改操作。主要是用来处理一些比较复杂的业务逻辑以保证数据的联动性。其包含了四要素: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>
登入後複製

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

实例

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

相關標籤:
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
linux安裝mysql報錯
來自於 1970-01-01 08:00:00
0
0
0
mysql 升級後無法重新啟動mysql服務的問題
來自於 1970-01-01 08:00:00
0
0
0
MySQL停止進程
來自於 1970-01-01 08:00:00
0
0
0
phpstudy不能啟動mysql?
來自於 1970-01-01 08:00:00
0
0
0
環境中mysql
來自於 1970-01-01 08:00:00
0
0
0
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板