在 MySQL 中使用触发器监视用户资产变更
使用 MySQL 的触发器来实现用户表中的资产字段更新后自动向资产记录表 user_asset_watch 中插入一条记录,记录下变化前后的数据。
创建触发器:
DELIMITER ^^
BEFORE UPDATE ON users
FOR EACH ROW
BEGIN
IF (OLD.balance!=NEW.balance or OLD.balance_usdt!=NEW.balance_usdt
or OLD.frozen!=NEW.frozen or OLD.frozen_usdt!=NEW.frozen_usdt) THEN
INSERT INTO user_asset_watch(user_id,balance_old,balance_new,frozen_old,frozen_new)
VALUES(OLD.id,OLD.balance,NEW.balance,OLD.frozen,NEW.frozen);
END IF^^
END^^
DELIMITER ;
删除触发器:
IF EXISTS t_user_assets_watch;