- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第10章 触发器 【学习要点】 触发器的基本概念及作用 触发器的分类 创建和管理触发器 触发器的综合应用 10.1触发器基本概述 1、什么是触发器 触发器是一种特殊的存储过程,当用户对表或视图执行INSERT、UPDATE或DELETE操作时,相关的触发器被自动调用,检查表或视图在执行添加、修改或删除操作后,其数据是否符合业务规则和数据完整性。触发器及其激发它执行的操作语句,整体被作为单个事务(Transaction),而且在触发器中可以回滚该事务。 10.1触发器基本概述 2、触发器与约束 约束可以直接设置于数据表内,只能处理相对简单的操作,包括自动填入默认值(DEFAULT)、确保字段数据不重复(PRIMARY KEY/UNIQUE KEY)、限制输入值在某一范围内(CHECK)、维护数据表间的完整性(FOREIGN KEY)等。 触发器是一种特殊的存储过程,当数据表发生INSERT、UPDATE或DELETE操作时会自动被触发,可以去执行相对复杂的操作。 10.1触发器基本概述 3、触发器的用途 触发器可以用于连锁更新或连锁删除数据库中相关联的表。但是,如果使用FOREIGN KEY约束来完成连锁更新与删除会比触发器更有效率。 数据被蓄意或是不小心地添加、修改或删除的情况下,使用触发器可以完全避免。 当数据所需符合的条件非常复杂,无法使用CHECK约束来完成时,就应使用触发器。触发器可以替代CHECK约束,完成复杂的操作。 触发器可以去检验表在事务操作之前和之后的状态,以便提供相应的处理机制。 10.1触发器基本概述 4、触发器的类别 AFTER触发器:执行INSERT、UPDATE或DELETE操作之后执行AFTER触发器。若发现操作有误,可使用ROLLBACK TRANSACTION语句将此次操作所更改的数据全部回滚。 INSTEAD OF 触发器:INSTEAD OF是“取代”的意思,就是这类触发器会取代原本要进行的操作(例如新建或更改数据操作),因此会在数据变动之前就发生,而且数据要如何变动也完全取决于触发器。 10.2 使用SQL Server Management Studio管理触发器 10.2.1创建触发器 10.3使用Transact-SQL管理触发器 10.3.1 创建和修改触发器 创建触发器 语法格式如下: CREATE TRIGGER 触发器名 ON {表|视图} {FOR |AFTER |INSTEAD OF } {DELETE | INSERT | UPDATE } AS SQL 语句 10.3使用Transact-SQL管理触发器 参数说明: 触发器名:指触发器的名称,同其他数据库对象一样,触发器的名称在所属数据库中必须是唯一的。 ON{表|视图}:指定触发器所属的数据表或视图。但只有INSTEAD OF 触发器才能设置在视图上。 {FOR |AFTER |INSTEAD OF }:指定触发器类型。FOR 与AFTER具有相同含意,建立AFTER触发器,只有在数据表的操作都已经完成后才激发此触发器。INSTEAD OF 触发器将取代原来要执行的数据操作。 {DELETE | INSERT | UPDATE }:指在表或视图上执行了哪一类的操作时会将触发器激活。至少必须指定一个,若指定多个,可用逗号分开。在同一数据表中,AFTER触发器指定的操作数目没有限制;INSTEAD OF 触发器,则限制INSERT、UPDATE、DELETE每项最多只能有一个。 SQL 语句:指定触发器的内容。因为触发器是自动被执行的,所以触发器不接收任何参数,也不需返回数据。 10.3使用Transact-SQL管理触发器 10.3.1 创建和修改触发器 修改触发器 语法格式如下: ALTER TRIGGER 触发器名 ON {表|视图} {FOR |AFTER |INSTEAD OF } {DELETE | INSERT | UPDATE } AS SQL 语句 10.4设计触发器 10.4.1 设计触发器的注意事项 1、设计触发器的限制 10.4设计触发器 10.4.1 设计触发器的注意事项 2、在触发器中取得字段修改之前及之后的数据 10.4设计触发器 10.4.2 建立AFTER INSERT触发器 当INSERT触发器被激活,新建的数据同时放入inserted数据表和原数据表中,deleted数据表还未被使用。 10.4设计触发器 10.4.3 建立AFTER UPDATE触发器 当UPDATE触发器被激活时,更新的数据已存入原数据表及inserted数据表中,而更新前的旧数据则放在deleted数据表中。此时可以查看新、
您可能关注的文档
- 新SMT——表面组装技术 第2版 教学课件 何丽梅 SMT第5章.ppt
- 新SMT——表面组装技术 第2版 教学课件 何丽梅 SMT第6章 02.ppt
- 新SMT——表面组装技术 第2版 教学课件 何丽梅 SMT第6章 03.ppt
- 新SMT——表面组装技术 第2版 教学课件 何丽梅 SMT第6章.ppt
- 新SMT——表面组装技术 第2版 教学课件 何丽梅 SMT第7章 静电防护部分.ppt
- 新SMT——表面组装技术 第2版 教学课件 何丽梅 SMT第8章.ppt
- 新SMT——表面组装技术 第2版 教学课件 何丽梅 第1章 SMT综述.ppt
- 新SMT——表面组装技术 第2版 教学课件 何丽梅 第2章 SMT元器件.ppt
- 新SMT——表面组装技术 第2版 教学课件 何丽梅 第4章 SMT工艺材料.ppt
- 新SolidWorks2009三维设计及应用教程 第2版 教学课件 曹茹 主编 SolidWorks 2009 三维设计及应用教程 电子教案.ppt
- 新SQL Server 2005数据库技术与应用 教学课件 赵丽辉 第11章 游标、事务.ppt
- 新SQL Server 2005数据库技术与应用 教学课件 赵丽辉 第12章 数据库安全操作.ppt
- 新SQL Server 2005数据库技术与应用 教学课件 赵丽辉 第13章 数据库管理操作.ppt
- 新SQL Server 2005数据库技术与应用 教学课件 赵丽辉 第14章 SQL Server 2005 实例.ppt
- 新SQL Server 2005数据库应用技术 教学课件 王亚楠 第1章 SQL Server 2005概述.ppt
- 新SQL Server 2005数据库应用技术 教学课件 王亚楠 第2章 数据库技术概述.ppt
- 新SQL Server 2005数据库应用技术 教学课件 王亚楠 第3章 数据库管理.ppt
- 新SQL Server 2005数据库应用技术 教学课件 王亚楠 第4章 表.ppt
- 新SQL Server 2005数据库应用技术 教学课件 王亚楠 第5章 数据管理.ppt
- 新SQL Server 2005数据库应用技术 教学课件 王亚楠 第6章 T SQL基础.ppt
最近下载
- 从百草园到三味书屋.pdf VIP
- 电信诈骗主题教育PPT模板主题班会教育PPT课件模板.pptx VIP
- 医院护理人员职业健康保护制度.docx VIP
- 第4课 《直面挫折 积极应对》课件 - 中职高教版心理健康与职业生涯.ppt
- 《宠物健康与免疫》课件.ppt VIP
- 松香水安全技术说明书样本.doc VIP
- 在WindowsServer2008英文版64位服务器上安装金蝶K3V10.4数据库层方案.pdf VIP
- 中小学班级英语文化建设方案及实施.docx VIP
- 新疆维吾尔自治区乌鲁木齐市2024-2025学年九年级9月月考历史试题(原卷版).pdf VIP
- 第四章 不完全信息动态博弈四章 不完全信息动态博弈第四章 不完全信息动态博弈第四章 不完全信息动态博弈.ppt VIP
文档评论(0)