第10 存储过程和触发器.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第10 存储过程和触发器

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 第10章 存储过程和触发器 存储过程的概念 1 建立和执行存储过程 2 存储过程的管理与维护 3 触发器的概念 4 创建和应用DML触发器 5 触发器的管理与维护 6 DDL触发器 7 事务 8 10.7 DDL触发器 DDL触发器是SQL Server2005新增的一个触发器类型,像常规触发器一样,DDL触发器将激发存储过程以响应事件。DDL触发器为响应多种数据定义语言语句而激活,这些语句主要是以CREATE、ALTER和DROP开头的语句。 10.7 DDL触发器 一般来说,在以下几种情况下可以使用DDL触发器。 (1)防止数据库架构进行某些修改。 (2)防止数据库或数据表被误操作而删除。 (3)希望数据库发生某种情况以响应数据库架构中的更改。 (4)要记录数据库架构的更改或事件。 仅在运行DDL触发器的DDL语句后,DDL触发器才会激发。DDL触发器无法作为INSTEAD OF触发器而使用。 10.7 DDL触发器 创建DDL触发器的语法格式如下: CREATE TRIGGER 触发器名 ON {服务器|数据库} [WITH ENCRYPTION] {FOR|AFTER } {DDL语句名称} AS SQL语句 10.7 DDL触发器 例10.16 建立用于保护数据库xsgl中的数据表不被删除的触发器。 CREATE TRIGGER dis_drop_table ON xsgl FOR DROP_TABLE AS BEGIN RAISERROR(对不起,xsgl数据库中的表不能删除,16,10) END GO 10.7 DDL触发器 查看和修改DDL触发器 (1)作用在当前SQL Server服务器上的DDL触发器所在的位置 10.7 DDL触发器 (2)作用在当前数据库中的DDL触发器所在位置 第10章 存储过程和触发器 存储过程的概念 1 建立和执行存储过程 2 存储过程的管理与维护 3 触发器的概念 4 创建和应用DML触发器 5 触发器的管理与维护 6 DDL触发器 7 事务 8 10.8 事务 事务是作为单个逻辑工作单元执行的一系列操作。这一系列操作或者都被执行,或者都不被执行。 10.8 事务 事务作为一个逻辑工作单元有4个属性,称为ACID(原子性、一致性、隔离性和持久性)属性。 (1)原子性。事务必须是原子工作单元,对于其数据修改,要么全都执行,要么全都不执行。 (2)一致性。事务在完成时,必须使所有的数据都保持一致状态。在相关数据库中,所有规则都应用于事务的修改,以保持所有数据的完整性。事务结束时,所有的内部数据结构都必须是正确的。 (3)隔离性。由并发事务所做的修改必须与任何其他并发事务所做的修改隔离。保证事务查看数据时数据所处的状态,只能是一并发事务修改它之前的状态或者是另一事务修改它之后的状态,而不能查看中间状态的数据。 (4)持久性。事务完成之后对系统的影响是永久的。 10.8 事务 SQL Server有以下3种事务模式。 (1)自动提交事务。这是SQL Server的默认模式。每个单独的SQL语句都是一个事务,并在其完成后提交。不必指定任何语句控制事务。 (2)显式事务。每个事务均以BEGIN TRANSACTION语句显式开始,以COMMIT或ROLLBACK语句显式结束。 (3)隐性事务。通过API函数或Transact-SQL的SET IMPLICIT_TRANSACTION ON语句,将隐性事务模式设置为打开。这样在前一个事务结束时新事务隐式启动,但每个事务仍以COMMIT或ROLLBACK语句显式结束。 10.8 事务 事务组织结构的一般形式如下。 (1)定义一个事务的开始:BEGIN TRANSACTION。 (2)提交一个事务:COMMIT TRANSACTION。 (3)回滚事务:ROLLBACK TRANSACTION。 BEGIN TRANSACTION代表一个事务的开始点,事务执行到COMMIT TRANSACTION提交语句后结束事务,完成对数据库所做的永久改动。如果遇上错误用ROLLBACK TRANSACTION语句可以撤消所有改动。 本章小结 1.存储过程是一种数据库对象,是存储在服务器上的一组预定义的SQL语句集合。创建存储过程并将编译好的版本存储在高速缓存中,可以加快程序的执行效率。存储过程可以有输入、输出参数,可以返回结果集以及返回值。通过本章的学习,应掌握各种存储过程的创建、执行、修改和删除方法。 本章小结 2.触发器是一种特殊的存储过程,当有INSERT、UPDATE和D

文档评论(0)

peili2018 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档