数据库触发器详讲

一:触发器的概念:

        数据库触发器是一个与表相关联的,存储的plsql语句。

        作用:每当一个特定的数据操作语句,(insert,update,delete)在指定的表发出时,Oracle自动地执行触发器中定义的语句序列

       第一个触发器:每当成功插入新员工后   自动打印“插入新员工成功”

    

1
2
3
4
5
6
7
8
9
10
11
12
13
create trigger 触发器名字(saynewemp)
 
after (执行操作之后) insert
 
on  操作的表(emp)
 
declare
 
begin
 
 dbms_output.put_line('成功插入新员工');
 
end

 二:触发器的应用场景:

   1.复杂的安全性检查
   

   2.数据审计

   3.实现审计功能

   4.完成数据的同步和备份

三:触发器的类型:

   1.语句级触发器:在指定的操作语句操作之前活之后执行一次,不管这条语句影响了多少行。 (针对的是表)

   2.行级触发器:触发语句执行的每一条记录都被触发。在行级触发语句中使用 :old 和 :new  伪记录变量,识别值的状态。(针对的是行)  后跟 for each row

 创建触发器的具体语法:

1
2
3
4
5
6
create [or replacetrigger  触发器名
{before|after}
{delete|insert|update [of 列名]}
on  表名
[for  each  row [where (条件 )]]
plsql 块

 参考网站:https://i.cnblogs.com/EditPosts.aspx?opt=1

posted @   石shi  阅读(861)  评论(0编辑  收藏  举报
编辑推荐:
· 用 C# 插值字符串处理器写一个 sscanf
· Java 中堆内存和栈内存上的数据分布和特点
· 开发中对象命名的一点思考
· .NET Core内存结构体系(Windows环境)底层原理浅谈
· C# 深度学习:对抗生成网络(GAN)训练头像生成模型
阅读排行:
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· 本地部署DeepSeek后,没有好看的交互界面怎么行!
· 趁着过年的时候手搓了一个低代码框架
· 用 C# 插值字符串处理器写一个 sscanf
· 推荐一个DeepSeek 大模型的免费 API 项目!兼容OpenAI接口!
点击右上角即可分享
微信分享提示