項目觸發器
在mysql 表中增加
需求 當這個表 新增記錄的時候觸發
DROP TRIGGER IF EXISTS t_make_data; //刪除原先的觸發器
CREATE TRIGGER t_make_data //創建觸發器
BEFORE INSERT ON t_tab1 //觸發在這張表新增數據前
FOR EACH ROW
BEGIN //要執行的sql list 開始
DECLARE number_rand BIGINT(20) DEFAULT 4000 ;
SET number_rand = (SELECT CAST(RAND()*300+300 AS signed) AS rand);//進行隨機數
SET new.number_rand = number_rand;//要在新增的數據中加入數據
END;//要執行的sql list 結束
下面這個是在這個表某個字段發生變動的時候進行觸發
DROP TRIGGER IF EXISTS t_make_data;//刪除原先的觸發器
CREATE TRIGGER t_make_data //創建觸發器
BEFORE update ON t_tab1 //觸發在這張表修改原先數據前
FOR EACH ROW
BEGIN
DECLARE number_rand BIGINT(20) DEFAULT 100 ; //創建變量
SET number_rand = (SELECT CAST(RAND()*10+10+old.number_rand AS signed) AS rand);//隨機數
IF new.number <> old.number then //進行判斷如果新的數據 不等於 就的數據
SET new.number_rand=number_rand; //進行性更新
END IF; //if結束
END; //sql 結束
複製過去 要把註釋幹掉
希望可以幫當大家
歡迎討論和教導