ORACL触发器

--创建一个触发器在插入之前生效触发
--insert/update/delete还有对事物的改变都可以用触发器执行
create or replace trigger j_tri before insert on test2021_0606
--只要有一行更改就会触发一次,如果不加for each row就是只触发一次
for each row
declare
x varchar2(400);
begin
--:new就是把新的数据调出来,:old就是调更改前的数据
x:=:new.t_names;
dbms_output.put_line(x);
--效果:如果x是以X开头的,则把插入数据的address改成指定值
if(x like 'w%') then :new.address:='w的地址';
end if;
end;

定义一个触发器,实现当有插入语句的时候,判断插入的数据中如果t_names以x开头,则把插入数据的地址改成X的地址。
这里是对insert更改做了触发器,还可以对事物,update,delete做更改触发。
--下面执行插入语句来检验触发器的功能
insert into test2021_0606 values(
'w',6,'o'
);
做insert操作可以看到,当字段t_names以w开头时,address更改成了w的地址,而非insert语句中的'o'

文章转载自超人网页作坊,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
相关阅读
【专家有话说第五期】在不同年龄段,DBA应该怎样规划自己的职业发展?
墨天轮编辑部
1328次阅读
2025-03-13 11:40:53
Oracle RAC ASM 磁盘组满了,无法扩容怎么在线处理?
Lucifer三思而后行
803次阅读
2025-03-17 11:33:53
2月“墨力原创作者计划”获奖名单公布
墨天轮编辑部
470次阅读
2025-03-13 14:38:19
Oracle 如何修改 db_unique_name?强迫症福音!
Lucifer三思而后行
366次阅读
2025-03-12 21:27:56
Oracle DataGuard高可用性解决方案详解
孙莹
318次阅读
2025-03-26 23:27:33
Oracle分区和执行计划相关的几个问题
听见风的声音
311次阅读
2025-03-07 08:51:42
切换Oracle归档路径后,不能正常删除原归档路径上的归档文件
dbaking
253次阅读
2025-03-19 14:41:51
风口浪尖!诚通证券扩容采购Oracle 793万...
Roger的数据库专栏
247次阅读
2025-03-24 09:42:53
墨天轮个人数说知识点合集
JiekeXu
244次阅读
2025-04-01 15:56:03
一键装库脚本3分钟极速部署,传统耗时砍掉95%!
IT邦德
243次阅读
2025-03-10 07:58:44