网站大量收购闲置独家精品文档,联系QQ:2885784924

东北财经大学数据库原理与应用课件第六章 存储过程和触发器.ppt

东北财经大学数据库原理与应用课件第六章 存储过程和触发器.ppt

  1. 1、本文档共34页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据库原理与应用教程 第6章 存储过程和触发器 6.1存储过程 6.2 触发器 6.1 存储过程 使用和管理存储过程 使用存储过程维护数据完整性 6.1.1 存储过程基础 在大型数据库系统中,存储过程和触发器具有很重要的作用。无论是存储过程还是触发器,都是SQL 语句和流程控制语句的集合。 就本质而言,触发器也是一种存储过程。 存储过程在运算时生成执行方式,所以,以后对其再运行时其执行速度很快。 SQL Server 2000 不仅提供了用户自定义存储过程的功能,而且也提供了许多可作为工具使用的系统存储过程。 存储过程的概述 存储过程(Stored Procedure)是一组为了完成特定功能的SQL 语句集,经编译后存储在数据库中。用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。 ????在SQL Server 的系列版本中存储过程分为两类: 系统提供的存储过程 用户自定义 存储过程 存储过程的概述 系统过程主要存储在master 数据库中并以sp_为前缀,并且系统存储过程主 要是从系统表中获取信息,从而为系统管理员管理SQL Server 提供支持。 通过系统存储 过程,MS SQL Server 中的许多管理性或信息性的活动(如了解数据库对象、数据库信息) 都可以被顺利有效地完成。尽管这些系统存储过程被放在master 数据库中,但是仍可以在其它数据库中对其进行调用,在调用时不必在存储过程名前加上数据库名。而且当创建 一个新数据库时,一些系统存储过程会在新数据库中被自动创建。 用户自定义存储过程是 由用户创建并能完成某一特定功能(如查询用户所需数据信息)的存储过程。在本章中所 涉及到的存储过程主要是指用户自定义存储过程。 6.1.2 存储过程的概念 ???? 当利用MS SQL Server 创建一个应用程序时,T-SQL 是一种主要的编程语 言。若运用T-SQL 来进行编程,有两种方法。 其一是,在本地存储T- SQL 程序,并创建应用程序向SQL Server 发送命令来对结果进行处理。 其二是,可以把 部分用T-SQL 编写的程序作为存储过程存储在SQL Server 中,并创建应用程序 来调用存储过程,对数据结果进行处理 存储过程能够通过接收参数向调用者返回结果集, 结果集的格式由调用者确定;返回状态值给调用者,指明调用是成功或是失败;包括针对 数据库的操作语句,并且可以在一个存储过程中调用另一存储过程。 我们通常更偏爱于使用第二种方法。 注意: 存储过程虽然既有参数又有返回值,但是它与函数不同。存储过程的返回值只是指明执行是否成功, 并且它不能像函数那样被直接调用,也就是在调用存储过程时,在存储过程名字前一定要有EXEC保留字。 6.1.3 存储过程的优点 存储过程允许标准组件式编程 存储过程在被创建以后可以在程序中被多次调用,而不必重新编写该存储过程的SQL语句。而且数据库专业人员可随时对存储过程进行修改,但对应用程序源代码毫无影响(因为应用程序源代码只包含存储过程的调用语句),从而极大地提高了程序的可移植性。 存储过程能够实现较快的执行速度 如果某一操作包含大量的Transaction-SQL 代码或分别被多次执行,那么存储过程要 比批处理的执行速度快很多。因为存储过程是预编译的,在首次运行一个存储过程时,查询优化器对其进行分析、优化,并给出最终被存在系统表中的执行计划。而批处理的Transaction- SQL 语句在每次运行时都要进行编译和优化,因此速度相对要慢一些。 存储过程能够减少网络流量 对于同一个针对数据库对象的操作(如查询、修改),如果这一操作所涉及到的 Transaction-SQL 语句被组织成一存储过程,那么当在客户计算机上调用该存储过程时, 网络中传送的只是该调用语句,否则将是多条SQL 语句,从而大大增加了网络流量。 存储过程可被作为一种安全机制来充分利用 系统管理员通过对执行某一存储过程的权限进行限制,从而能够实现对相应的数据访问权限的限制,避免非授权用户对数据的访问,保证数据的安全。 存储过程的初始处理 存储过程的后续处理 6.1.4 创建存储过程指南 在MS SQL Server 2000 中,创建一个存储过程有两种方法: 一种是使用Transaction-SQL 命令Create Procedure,这是一种较为快速的方法。 另一种是使用图形化管理工具Enterprise Manager。 对于初学者,使用Enterprise Manager 更易 理解,更为简单。 当创建存储过程时,需要确定存储过程的三个组成部分; 所有的输入参数以及传给调用者的输出参数。 被执行的针对数据库的操作语句,包括调用其它存储过程的

文档评论(0)

ormition + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档