首頁 > 資料庫 > mysql教程 > MySQL觸發器之創建觸發器

MySQL觸發器之創建觸發器

黄舟
發布: 2017-05-07 16:38:05
原創
2663 人瀏覽過

MySQL觸發器之創建觸發器

觸發器在資料庫系統開發過程中具有非常重要的作用,例如可以防止有害資料輸入資料庫,可以改變或取消insert、update和delete語句的執行及在一個會話中監聽資料庫中的資料的改變。

那我們在前面介紹了關於MySQL視圖的應用的幾篇文章《MySQL視圖的應用之創建視圖》《MySQL視圖的應用之修改視圖 》以及《MySQL視圖的應用程式視圖》,那麼我們這篇文章開始主要介紹MySQL觸發器~

如果使用者打算在資料庫中透過觸發器實現某一動作的監聽,那麼首先應該建立觸發器,觸發器是在「命令提示字元」下建立的。

技術要點

MySQL資料庫建立觸發器的格式如下:

create trigger <触发器名称>
{ before | after}
{insert | update | delete}
on <表名>
for each row
<触发器SQL语句>
登入後複製

create trigger <觸發器名稱> ;:建立一個新觸發器,並指定觸發器的名稱。

{ before | after}:用於指定在insert、update或delete語句執行前觸發或是在語句執行後觸發。

on <表名>:用於指定回應該觸發器的表名。

for each row:觸發器的執行間隔,for each row 通知觸發器每隔一行執行一次動作,而不是對整個表執行一次。

<觸發器SQL語句>:觸發器要執行的SQL語句,如果該觸發器要執行多條SQL語句,要將多條語句放在begin…end區塊中。

實作過程

(1)在「命令提示字元」下建立資料表tb_test。程式碼如下:

create table tb_test(t_id varchar(20),t_name varchar(20))
登入後複製

(2)將換行標記轉換為“//”。程式碼如下:

delimiter //
登入後複製

(3)建立觸發器,實作無論使用者在表tb_test中新增什麼資料都會使欄位t_name的內容為「mrsoft」。程式碼如下:

create trigger test_tri
before insert on tb_test
for each row
set new.t_name=&#39;mrsoft&#39;
登入後複製

(4)向表tb_test新增一筆記錄,並查看新增後的結果。程式碼如下:

insert into tb_test(t_id,t_name) values(&#39;mr0001&#39;, &#39;123&#39;)//
select * from tb_test
登入後複製

那麼我們將上面的實現過程在「命令提示字元」中一步步輸入實現,輸出結果如下圖:

MySQL觸發器之創建觸發器

##關於MySQL觸發器的創建我們就介紹到這裡,是不是很簡單,相信小伙伴們都可以快速的掌握,那麼我們下一篇文章會繼續介紹MySQL觸發器,具體請閱讀《

MySQL觸發器之查看觸發器》!

【相關教學推薦】

1.【

MYSQL線上免費影片教學

2. 相關影片課程推薦: 《

動力節點mysql基礎影片教學

以上是MySQL觸發器之創建觸發器的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板