mysql 觸發器示例

2021-07-15 19:40:27 字數 1285 閱讀 6649

一些操作會觸發的函式。

如更新(增刪改)rule_hzq_all(或 b_rule_table)表的時候,我們希望對更新操作做記錄。

這種情況使用觸發器,使用者對 rule_hzq_all 有更新操作時,觸發記錄函式。

create table update_history

( bussiness varchar(12),

operation varchar(12),

rule_id varchar(64),

time timestamp

)delimiter //

create trigger t_afterupdate_on_rulecheckall after update on rule_hzq_all for each row

begin

declare changed_col varchar(512);

set changed_col = '';

if old.rule_id <> new.rule_id then

set changed_col = concat(changed_col, 'rule_id&');

end if;

if changed_col <> '' then

set changed_col = left(changed_col, length(changed_col) - 1);

end if;

insert into update_history values ('check', 'update', old.rule_id, current_timestamp());

end;

create trigger t_afterinsert_on_rulehzqall after insert on rule_hzq_all for each row

begin

insert into update_history values ('check', 'insert', new.rule_id,current_timestamp());

end;

create trigger t_afterdelete_on_rulehzqall after delete on rule_hzq_all for each row

begin

insert into update_history values ('check', 'delete', old.rule_id,current_timestamp());

end;

trigger.sql

mysql 觸發器示例 MySQL觸發器示例 8

什麼是觸發器 需求 出於審計目的,當有人往表users插入一條記錄時,把插入的uid,uname,插入動作和操作時間記錄下來。delimiter create trigger tr users insert after insert onusersforeach rowbegin insert in...

觸發器 示例

本例阻止使用者修改employees表中的employeeid列。use northwind gocreate trigger employee update on employees for update asif update employeeid begin raiserror transac...

觸發器 mysql觸發器

觸發器是一種特殊的儲存過程,它在插入 刪除或修改特定表中的資料時觸發執行,它比資料庫本身標準的功能有更精細和更複雜的資料控制能力。和儲存過程一樣,很少使用。1 觸發器的作用 2 建立觸發器 建立測試環境 mysql create database test db query ok,1 row aff...