- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
模块十一触发器
模块十一 触发器 教学目标 了解触发器的概念和类型 理解触发器的优点 掌握触发器的创建、执行和删除等操作 教学重点 理解触发器的优点 掌握触发器的创建、执行和删除等操作 教学内容 触发器概述 DML触发器的创建和应用 DDL触发器的创建和应用 查看、修改和删除触发器 一、触发器概述 触发器是一种特殊类型的存储过程,它主要通过当某个事件发生时自动被触发执行的,而存储过程可以通过存储过程名字而被直接调用。 例如,当对某一个表进行诸如UPDATE、INSERT、DELETE这些操作时,SQL Server就会自动执行触发器所定义的T-SQL语句,从而确保对数据的处理必须符合由这些T-SQL语句所定义的规则。 一、触发器概述 1. 触发器的作用 触发器的主要作用是能实现由主键和外键所不能保证的、复 杂的参照完整性和数据的一致性,除此之外,触发器还有其 他许多不同的功能。 可以调用存储过程 为了响应数据库更新,触发器的操作可以通过调用一个或多 个存储过程,甚至可以通过调用外部过程完成相应操作。 跟踪变化 触发器可以侦测数据库内的操作,从而禁止了数据库未经许 可的更新和变化,使数据库的修改、更新操作更安全,数据 库运行更稳定。 一、触发器概述 可以强化数据条件约束 触发器能够实现比CHECK语句更为复杂的约束,更适合在 大型数据库管理系统中用来约束数据的完整性。 级联和并行运行 触发器可以侦测数据库内的操作,并自动地级联影响整个数 据库的各项内容。例如,某个表的触发器中包含有对另外一 个表的数据操作,如删除、更新、插入,而该操作又导致该 表上的触发器被触发。 由此可见,触发器可以实现高级形式的业务规则、复杂行为 限制和定制记录等功能。 2. 触发器的类型 按照触发事件的不同,可以把Microsoft SQL Server 2008系统提供的触发器分成两大类型,即 DML触发器和DDL触发器。 DML触发器可以在数据库中数据修改时被执行。 DML事件包括在指定表或视图中修改数据的INSERT 语句、UPDATE语句或DELETE语句。 DML触发器的优点: (1)自动执行的。 (2)能够对数据库中的相关表实现级联操作。 (3)实现比CHEAK约束更为复杂的完整性约束。 (4)可以评估数据修改前后表的状态。 (5)一个表可存在三种不同操作的触发器。 当服务器或数据库中发生数据定义语言(DDL)事件时将调用这些触发器。 DDL触发器与DML触发器的相同之处在于都需要触发事件进行触发,但是,它与DML触发器不同的是,它不会为响应针对表或视图的UPDATE、INSERT或DELETE语句而触发,相反,它会为响应多种数据定义语言(DDL)语句而触发。 3、DML触发器的分类 在Microsoft SQL Server 2008系统中,按照触发器事 件类型的不同,可将DML触发器分成3种类型:INSERT类 型、UPDATE类型和DELETE类型。 当向一个表中插入数据时,如果该表有INSERT类型的 DML触发器,则该触发器就执行; 如果该表有UPDATE类型的DML触发器,则当对该触发 器表中的数据执行更新操作时,该触发器就执行; 如果该表有DELETE类型的DML触发器,当对该触发器 表中的数据执行删除操作时,该DELETE类型的DML触发器 就触发执行。 也可以将这三种触发器组合起来使用。 3、DML触发器的分类 根据触发器被激活的时机,可以把DML触发器分为AFTER触发 器和INSTEAD OF触发器。 当在INSERT、UPDATE、DELETE语句执行之后才执行DML触发 器的操作时,这种触发器的类型就是AFTER触发器。AFTER触发器只 能在表上定义。 如果希望使用触发器操作代替触发事件操作,可以使用INSTEAD OF类型的触发器。也就是说,INSTEAD OF触发器可以替代INSERT、 UPDATE和DELETE触发事件的操作。INSTEAD OF触发器既可以建在 表上,也可以建在视图上。通过在视图上建立触发器,可以大大增强通 过视图修改表中数据的功能。 二 、 DML触发器的创建和应用 1. DML 触发器的创建 当创建一个触发器时必须指定如下选项: ? 名称 ? 在其上定义触发器的表。 ? 触发器将何时激发 ? 激活触发器的数据修改语句,有效选项为INSERT, UPDATE或 DELETE,多个数据修改语句可激活同一个触发 器,例如,触发器可由INSERT或 UPDATE语句激活。 ? 执行触发器操作
文档评论(0)