- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
触发器在SQL Server数据库开发中应用与研究
触发器在SQL Server数据库开发中应用与研究
摘要:触发器是一种特殊的存储过程,它的主要功能是监视用户对数据表的修改,文章以SQL Server 2005数据库系统为例,介绍了触发器的类型、作用,探讨了触发器在维护数据表之间一致性、保持数据完整性的强大功能,重点讨论触发器在数据库开发中的实际应用。
关键词:SQL Server;数据库; 触发器;数据完整性
中图分类号:TP311文献标识码:A文章编号:1009-3044(2011)11-2492-03
The Application and Research of Trigger Technology on SQL Server Database Development
ZHONG Ya-mei
(Guangzhou Baiyun Industrial Commercial Technician Institute, Guangzhou 510450, China)
Abstract: Trigger is a special kind of stored procedure, its main function is to monitor the user to change the table. This thesis based on SQL Server 2005 database system, dscribes the types and the application of trigger, analysises the function of the trigger in the maintaining data consistency between tables and data integrity, focuses on the practical application of the database development.
Key words: SQL Server; database; trigger; data integrity
在大型关系数据库开发中,保证数据完整性在数据库系统管理中是十分重要的,是数据库开发的重点研究内容。触发器作为数据库管理系统响应数据变化的一种机制,在数据修改时自动强制执行其业务规则,可以轻松解决有关数据完整性的问题。
1 触发器作用
触发器是一种特殊的存储过程,主要功能是监视用户对数据的Insert、Update 和Delete等操作。一个数据表一旦创建了触发器,就存在于后台数据库系统中,当用户欲对数据表进行这些操作时,触发器会被自动触隐式执行所定义的SQL 语句,从而确保数据处理符合由这些SQL语句所定义的规则,防止其他操作对数据库进行不正确修改,保证数据的完整性与一致性。
在开发时,主要是利用其工作原理来设计一种新的机制,把数据库系统提供的访问控制功能作为第一层的安全保护,再构建一层访问控制机制作为第二层安全保护。也就是说,当用户想突破第一层安全保护进入数据库时,需提升权限,突破第二层安全保护才能取得操作权限,这样一来,有效防止用户的恶意篡改数据,保护了数据的安全。
除此之外,触发器还有其他许多不同的功能,可以侦测数据库内的操作,从而不允许数据库中未经许可的指定更新和变化。概括起来,主要优点如下: 1)触发器是自动的;2)可以通过数据库中的相关表进行级联更新。如:计算表的同步更新,数据冗余实现等;3)可以强制限制操作, 实现比CHECK约束所定义的更复杂限制;4)实现那些破坏完整性操作的拒绝,如拒绝插入不匹配外码值。
2 SQL Server 2005触发器的类型
SQL Server 2005包含2大类触发器,DML(数据操作语言) 和 DDL(数据定义语言)。其中,DDL是SQL Server 2005的新增触发器,允许响应数据库引擎中对象定义水平事件(如CREATE、DROP动作)。而当数据库中发生DML 事件时将调用 DML 触发器,产生的是AFTER和Instead of,在指定的表或视图中执行所定义的SQL语句规则,扩展数据的完整性。
1)AFTER 触发器:AFTER 触发器在某一语句(Insert,Update 或Delete)执行之后激活,只能在表上定义,可以为针对表的同一操作定义多个触发器,并使用sp-settriggerorder 定义哪个AFTER 触发器最先激发,哪个最后激发。
通常,AFTER触发器用于监视发生在数据库表格里的数据变化,如果该语句因错误(如违反约束或语法错误) 而失败, 触发器将不会执行。
2)INSTEAD OF 触发器:这类触发器在某一语句(Inse
文档评论(0)