SQL中的触发器是什么?

学而不思则罔 专栏收录该内容
37 篇文章 0 订阅

可以简单的理解:相当于是一个时间的触发装置,当满足了触发事件的条件后进行相应的处理操作,例如在数据库表中增加或者删除、修改了某条记录后,输出消息来告知该操作。这样就可以在这个表上设置一个触发器,触发条件为增加,删除或者修改了记录,触发的时间就是进行消息通知的输出。

 

那么我们接下来用一种专业的描述来讲解:

1.触发器的作用:触发器是一种程序模块,是数据库的一种自动处理机制。触发器主要作用是保证数据库的安全性,例如:触发器通常通过对操作的记录来对象数据库进行操作的审查,或者实现复杂的约束条件。

2.什么时候用触发器:

根据触发器的触发条件可以分为3中触发器:分别为dml触发器、instead of触发器、ddl触发器。触发器的调用方式不同于存储过程和函数,他是通过“事假”来激活的。所谓的事件,就是数据库的动作或者用户的操作。触发器不能由用户显示调用,而是只能通过当触发事假发生并被扑捉到时,才会被触发。

3.创建触发器的步骤:

创建触发器首先需要create trigger权限

触发器有3中类型:dml触发器、instead of触发器、ddl触发器。在创建语句大致可以分为4步:

  1. 定义触发器
  2. 触发条件(区分不同的触发器的类型)
  3. 声明部分
  4. 主体部分

4.触发器里面是否可以有commit:不能

5.为什么触发器中不能由commit:

因为在Oracle规定,触发器中不能进行任何事务操作,任何对被触发的表进行的操作的事务都会失败,所以触发器中不能由commit

 

  • 0
    点赞
  • 0
    评论
  • 2
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 程序猿惹谁了 设计师:白松林 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值