本文主要是介绍PL/SQL创建简单的触发器trig…,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
原文地址:PL/SQL创建简单的触发器trigger 作者:stefanie
1.创建两个数据表,其字段及其属性完全一致
/*创建表t1*/
create table t1(id varchar2(10) not null,
uname varchar2(8),
primary key(id));
/*创建表t2*/
create table t2(id varchar2(10) not null,
uname varchar2(8),
primary key(id));
2.在两个表中插入相同的几条记录
insert into t1(id,uname) values('11','1111');
insert into t1(id,uname) values('22','2222');
insert into t2(id,uname) values('11','1111'); insert into t2(id,uname) values('22','2222');
3.创建触发器--针对表t1的insert、update以及delete操作,表t2进行相同的操作
create or replace trigger trig_af_t1
after insert or update or delete on t1
for each row
declare
l_id varchar2(10); --临时变量
l_uname varchar2(8);
begin
if(deleting or updating) then
delete t2
where id=:old.id;--update和delete命令,删除表t2和表t1中相对应的记录
if(deleting) then
return; --如果是delete命令,则返回
end if;
end if;
l_id:=:new.id; --将新的变量值赋给临时变量
l_uname:=:new.uname;
begin
insert into t2(id,uname)
values(l_id,l_uname); --update和insert命令都将新记录插入到表t2中
end;
end trig_af_t1;
这篇关于PL/SQL创建简单的触发器trig…的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!