ERP沙盘模拟管理综合实训手册 高冬梅 第11章 触发器新.pptVIP

ERP沙盘模拟管理综合实训手册 高冬梅 第11章 触发器新.ppt

  1. 1、本文档共66页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第11章 触发器 本章学习目标: 熟悉触发器的概念;触发器的优点; 掌握触发器的分类;deleted 表和 inserted 表。 掌握创建、更改、删除、禁用和启用触发器。 掌握每种触发器的工作过程。 第11章 触发器 11.1 触发器的基本概念 11.2 创建DML触发器 11.3 创建DDL触发器 11.4 管理触发器 11.5 本章小结 11.1 触发器的基本概念 SQL Server 2008提供了两种主要机制来强制执行业务规则和数据完整性:约束和触发器。约束在前面章节中已经介绍。 触发器(trigger)是一种特殊的存储过程,它不同于一般的存储过程,一般的存储过程通过存储过程名称被直接调用,而触发器主要是通过事件进行触发而被执行。 11.1 触发器的基本概念 11.1.1触发器的优点 (1) 触发器是自动执行的,当用户对表中的数据作了任何修改(比如手工输入或者应用程序采取的操作)之后立即被激活。 (2) 触发器可以通过数据库中的相关表进行层叠更改,实现多个表之间数据的一致性和完整性。 (3) 触发器可以强制限制,这些限制比用CHECK约束所定义的更复杂。 11.1 触发器的基本概念 11.1.2触发器的分类 (1)DML触发器 当数据库服务器中发生数据操作语言(DML)事件时要执行的操作。DML事件包括对表或视图发出的UPDATE、INSERT和DELETE操作。 DML触发器用于在数据被修改时强制执行业务规则,以及扩展SQL Server 约束、默认值和规则的完整性检查逻辑,它包括以下3种类型: 11.1 触发器的基本概念 11.1.2触发器的分类 (1)DML触发器 1) AFTER触发器:又称后触发器(After Trigger),这种类型的触发器将在数据变动(UPDATE、INSERT和DELETE操作)完成后才被触发。 指定 AFTER 与指定 FOR 相同。 AFTER触发器只能在表上定义。在同一个数据表中可以创建多个AFTER触发器。 默认的为AFTER触发器。 11.1 触发器的基本概念 11.1.2触发器的分类 (1)DML触发器 2) INSTEAD OF触发器: 又称前触发器(Inserted Of Trigger),这种类型的触发器在数据变动以前被触发,并取代变动数据的操作(UPDATE、INSERT和DELETE操作),而去执行触发器定义的操作。 INSTEAD OF触发器可以在表或视图上定义。 在表或视图上,每个UPDATE、INSERT和DELETE语句最多可以定义一个INSTEAD OF触发器。 11.1 触发器的基本概念 11.1.2触发器的分类 (1)DML触发器 3) CRL触发器:可以是AFTER触发器或INSTEAD OF触发器,还可以是DDL触发器。 这种类型的触发器将执行在托管代码(在.NET Framework中创建并在SQL Server中上载的程序集的成员)中编写的方法,而不用执行Transact-SQL存储过程。 注意: DML 触发器建议不要在触发器中使用游标,因为它们可能会降低性能。若要设计一个影响多行的触发器,请使用基于行集的逻辑,而不要使用游标。 11.1 触发器的基本概念 11.1.2触发器的分类 (2)DDL触发器: 在响应数据定义语言(DDL)语句时触发,是针对CREATE、ALTER和DROP等数据库定义语句时进行触发。可以用于在数据库中执行管理任务,例如审核以及规范数据库操作。 DDL与 DML 触发器相同,可以为同一个 Transact-SQL 语句创建多个 DDL 触发器。 同时,DDL 触发器和激发它的语句运行在相同的事务中。可从触发器中回滚此事务。严重错误可能会导致整个事务自动回滚。从批处理中运行并显式包含 ROLLBACK TRANSACTION 语句的 DDL 触发器将取消整个批处理。 11.1 触发器的基本概念 11.1.3 deleted 表和 inserted 表 触发器语句中使用了两种特殊的表:deleted 表和inserted 表。 SQL Server自动创建和管理这些表。 可以使用这两个临时的驻留内存的表测试某些数据修改的效果及设置触发器操作的条件,但不能对这两个表中的数据进行更改。 11.1 触发器的基本概念 11.1.3 deleted 表和 inserted 表 (1)deleted 表 用于存储 DELETE 和 UPDATE 语句所影响的行的备份。在执行 DELETE 或 UPDATE 语句时,行从基本表中删除,并转移到 deleted 表中。deleted 表和基本表通常没有相同的行。 (2)inserted 表

您可能关注的文档

文档评论(0)

时间加速器 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档