データベース トリガーの概要 - データを変更するトリガー、データを削除するトリガー

1. データを変更するトリガー

データを変更するトリガー

create trigger tb_user_update_trigger
	after update on tb_user for each row
begin
	insert int user_logs(id,operation,operate_time,operate_id,operate_params)VALUES
	(null,'update',now(),new.id,concat
	('更新之前的数据:id=',new.id,',name=',new.name,', phone=',new.phone,', email=',new.email,', profession=',new.profession
	' | 更新之后的数据:id=',new.id,',name=',new.name,', phone=',new.phone,', email=',new.email,', profession=',new.profession));
end;

show triggers;

データを更新する

update tb_user set age = 32 where id = 23;

ここに画像の説明を挿入
次のトリガーは何回発火しますか? いくつかのデータが複数回トリガーされます。

update tb_user set age = 32 where id <= 5;

2. データ削除のトリガー

create trigger tb_user_delete_trigger
	after delete on tb_user for each row
begin
	insert int user_logs(id,operation,operate_time,operate_id,operate_params)VALUES
	(null,'delete',now(),old.id,concat
	('删除之前的数据:id=',new.id,',name=',new.name,', phone=',new.phone,', email=',new.email,', profession=',new.profession);
end;

show triggers;

ここに画像の説明を挿入

delete from tb_user where id = 5;

ここに画像の説明を挿入

おすすめ

転載: blog.csdn.net/weixin_44860226/article/details/131946637