MySQL触发器示例

DELIMITER $     # 声明本次会话SQL结束标识符为$

# 基于km_account 表,建立一个名称为 sync_ks_account 的触发器,在每次插入一条新纪录时,执行
CREATE TRIGGER sync_ks_account AFTER INSERT ON km_account FOR EACH ROW  

BEGIN  # 触发器开始     
DECLARE acc BIGINT(64);    # 声明一个整型变量
DECLARE na VARCHAR(128) character set utf8;     #  声明一个字符变量
SET acc = NEW.account_id;                       #  给acc赋值,NEW代表新插入的行数据
SET na= NEW.name;
IF NEW.media = 3 THEN                            # SQL的条件语句,写在要执行的SQL之前
INSERT INTO ug_ks_account (account_id, name, update_time) VALUES (acc, na, DATE_FORMAT(NOW(),'%Y-%m-%d %H:%i:%s')) ON DUPLICATE KEY UPDATE update_time=VALUES(update_time);
END IF;
END $
DELIMITER ;    # 任务完成后,将SQL语句结束标识符修改为默认分号
posted @ 2021-06-05 20:19  _Eternity味道  Views(59)  Comments(0Edit  收藏  举报