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='mrsoft'
(4)向表tb_test新增一筆記錄,並查看新增後的結果。程式碼如下:
insert into tb_test(t_id,t_name) values('mr0001', '123')// select * from tb_test
那麼我們將上面的實現過程在「命令提示字元」中一步步輸入實現,輸出結果如下圖:
##關於MySQL觸發器的創建我們就介紹到這裡,是不是很簡單,相信小伙伴們都可以快速的掌握,那麼我們下一篇文章會繼續介紹MySQL觸發器,具體請閱讀《MySQL觸發器之查看觸發器》!
【相關教學推薦】1.【2. 相關影片課程推薦: 《以上是MySQL觸發器之創建觸發器的詳細內容。更多資訊請關注PHP中文網其他相關文章!