触发器的主要作用是,触发器主要的两种功能

首页 > 生活 > 作者:YD1662024-04-26 18:21:01

概述:

本章我们学习下,数据库高级应用触发器部分的知识!数据库完整性约束包含:实体完整性约束,域完整性约束,参照完整性约束,用户自定义完整性约束!

触发器的作用,主要用于满足参照完整性约束与用户自定义完整性约束!在这些领域的需求,我们都是可以通过触发器来实现,巧用触发器不仅可以提升项目开发效率,还可以满足很多特殊的需求,接下来让我们一探究竟!

触发器的主要作用是,触发器主要的两种功能(1)

什么是触发器?

触发器(trigger)是一种维护数据完整性约束的手段,它是与表绑定的特殊的存储过程,基于事件的响应模式,符合触发器的设置条件,那么就会执行相应的代码!

触发器的特点是什么?

1:它是一种特殊的存储过程。

2:基于事件的响应模式。

3:具备事务的特性,可以保证数据的一致性,支持数据回顾操作。

4:它是一种高级约束,可以满足特殊的业务规则。

5:触发器的事件响应DML语句,例如:DELETE触发器、INSERT触发器、UPDATE触发器,当触发器绑定表之后,明确设置响应语句类型,那么当该表接受到DML语句中特定的操作,则会做出相应的响应。

触发器的主要作用是,触发器主要的两种功能(2)

触发器的执行步骤是什么?

触发器触发时,系统自动在内存中创建deleted表或inserted表,该表为临时只读类型,不允许修改;触发器执行完成后,则自动删除!

inserted 表 :临时保存了插入或更新后的记录行。deleted 表:临时保存了删除或更新前的记录行。

如何创建触发器?

create trigger Demo_Triger --触发器名字 on A --作用在哪张表中 for insert --针对操作类型 AS --执行的业务操作脚本

接下来让我们实际操作一下,比如一张员工表有三个字段,工号、名字、性别,性别只能选择男或者女,这个需求属于自定义完整性约束,需要通过触发器来实现!

CREATE TABLE EMPLOYEES ( ENO INT, ENAME VARCHAR(20), ESEX CHAR(2) )

CREATE trigger EMPLOYEES_SexCheck_Triger on EMPLOYEES for insert AS DECLARE @SEX CHAR(2) SELECT @SEX = ESEX FROM inserted --将插入的数据查询出来 PRINT @SEX IF(@SEX <> '男' AND @SEX <> '女') BEGIN PRINT '性别非法!' ROLLBACK END ELSE BEGIN PRINT 'No Problem!' END

INSERT INTO EMPLOYEES SELECT 1,'张三','男'; INSERT INTO EMPLOYEES SELECT 2,'里斯','女'; INSERT INTO EMPLOYEES SELECT 3,'张三','它';

触发器的主要作用是,触发器主要的两种功能(3)

触发器的主要作用是,触发器主要的两种功能(4)

首页 123下一页

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.