触发器学习

本文详细介绍了数据库中的触发器,主要关注DML触发器(INSERT、UPDATE、DELETE)和DDL触发器。DML触发器在数据操纵事件时激活,用于维护数据完整性;DDL触发器在数据定义事件(如CREATE、ALTER、DROP)时触发,常用于系统管理和审计。文章还阐述了触发器的创建、特点及注意事项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 触发器的类型

(1)DML触发器。当数据库中发生数据操纵语言(DML)事件时将调用DML触发器。一般情况下,DML事件包括对表或视图的INSERT语句、UPDATE语句和DELETE语句,因而DML触发器也可分为三种类型:INSERT、UPDATE和DELETE。

(2)DDL触发器。DDL触发器也是由相应的事件触发的,但DDL触发器触发的事件是数据定义语句(DDL)。这些语句主要是以CREATE、ALTER、DROP等关键字开头的语句。DDL触发器的主要作用是执行管理操作,例如审核系统、控制数据库的操作等。

DML触发器

CREATE TRIGGER [ schema_name . ]trigger_name 
	ON { table | view } 		/*指定操作对象*/
		[ WITH  ENCRYPTION ]	/*说明是否采用加密方式*/
	{ FOR |AFTER | INSTEAD OF } 
		{ [ INSERT ] [ , ] [ UPDATE ] [ , ] [ DELETE ] } 
	[ WITH APPEND ] 
	[ NOT FOR REPLICATION ] 		/*说明该触发器不用于复制*/
AS {  sql_statement  [ ; ] [ ...n ]
	| EXTERNAL NAME asse MBly_name.class_name.method_name 
	}

说明:
(1)trigger_name:用于指定触发器名,触发器名必须符合标识符规则,并且在数据库中必须唯一。
(2)table | view:指在其上执行触发器的表或视图,有时称为触发器表或触发器视图。
(3)AFTER:用于说明触发器在指定操作都成功执行后触发,如AFTER INSERT表示向表中插入数据时激活触发器。
(4)INSTEAD OF:指定用DML触发器中的操作代替触发语句的操作。<

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值