使用触发器Trigger记录表的变化

本文介绍了一个用于跟踪数据库中注册学生信息变更的触发器。该触发器会在插入、更新或删除操作发生时记录变更类型、变更人及时间等信息。

判断表达式:

Inseting  进行Insert操作时返回True

Updating 进行Update操作时返回True

Deleting 进行Delete操作时返回True

create or replace trigger LogRSChanges
	before insert or update or delete on registered_students
	for each row
declare
	v_ChangeType char(1);
begin
/*  获取用户在进行何种操作*/
	if inserting then
		v_ChangeType := 'I';
	elsif updating then
		v_ChangeType := 'U';
	else
		v_ChangeType := 'D';
	end if;
	insert into rs_audit
		(change_type,
		 changed_by,
		 timestamp,
		 old_student_id,
		 old_department,
		 old_course,
		 old_grade,
		 new_student_id,
		 new_department,
		 new_course,
		 new_grade)
	values
		(v_ChangeType,
		 User,
		 sysdate,
		 :old.student_id,
		 :old.department,
		 :old.course,
		 :old.grade,
		 :new.student_id,
		 :new.department,
		 :new.course,
		 :new.grade);
end LogRSChanges;



评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值