--------学生表的创建------
create table stumsg
(
name varchar2(20),
num char(4) primary key
);
---------成绩表的创建--------
create table stuclass
(
num char(4),
math smallint,
chinese smallint,
constraint fk_class foreign key(num) references stumsg(num) on delete cascade,
constraint pk_class primary key(num)
);
-------创建触发器--------
set serveroutput on
create or replace trigger "trg_1"
after insert
on stumsg
begin
dbms_output.put_line('试一下学习一下触发器的使用...');
end trg_1;
---------触发器的查看--------
select trigger_name trg_1,
trigger_type after statement,
triggering_event insert,
table_name stumsg
from user_triggers;
insert into stuclass
values
('1001','90','100');
---------触发器的修改-----------
create or replace trigger "trg_1"
after insert
on stumsg for each row
begin
update stuclass set num=:new.num;
end trg_1;
------------级联更新------------
create or replace trigger "trg_up"
after update
on stumsg for each row
begin
update stuclass set num=:new.num;
end trg_up; 注意: oracle中 只有级联删除 ,没有级联更新。所以,要实现级联更新,用 trigger 是个不错的选择哦~~~~
菜鸟学 oracle中的触发器
最新推荐文章于 2022-12-31 22:20:18 发布
本文介绍了如何在Oracle数据库中创建学生信息表和成绩表,并通过触发器实现数据的自动同步更新。此外,还详细展示了如何创建用于级联更新的触发器。
6804

被折叠的 条评论
为什么被折叠?



