SQL中的触发器是什么?

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

 

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

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

 

posted @ 2019-03-22 17:49  CHANGEMAX  阅读(1614)  评论(0编辑  收藏  举报