- 0
- 0
- 约1.42万字
- 约 56页
- 2019-07-03 发布于广东
- 举报
第10章 存储过程和触发器 【学习目标】 本章将要学习存储过程和触发器的基本概念、作用和基本操作。 本章学习要点: 存储过程的概念、作用、分类; 存储过程的创建、查看、修改和执行; 触发器的主要作用、类型; inserted表和deleted表的作用和使用; 触发器的创建方法、查看、修改和执行。 图10-1 学习导航。 10.1 存储过程概述 Transact-SQL语言是应用程序与SQL Server数据库之间的主要编程接口,大量的时间将花费在Transact-SQL语句和应用程序代码上。在很多情况下,许多代码被重复使用多次,每次都输入相同的代码不但繁琐,更由于在客户机上的大量命令语句逐条向SQL Server 发送,将降低系统运行效率。因此,SQL Server提供了一种方法,它将一些固定的操作集中起来由SQL Server数据库服务器来完成,应用程序只需调用它的名称,就可实现某个特定任务,这种方法就是存储过程。 10.1.1 存储过程的概念 SQL SERVER 中T-SQL语言为了实现特定任务而将一些需要多次调用的固定的操作编写成子程序并集中以一个存储单元的形式存储在服务器上,由SQL Server数据库服务器通过子程序名来调用它们,这些子程序就是存储过程。 存储过程是一种数据库对象,存储在数据库内,可由应用程序通过一个调用执行,而且允许用户声明变量、有条件执行,具有很强的编程功能。存储过程可以使用EXECUTE语句来运行。 在SQL Server中使用存储过程而不使用存储在客户端计算机本地的T-SQL程序有以下几个方面的好处。 10.1.1 存储过程的概念 (1)加快系统运行速度。存储过程只在创建时进行编译,以后每次执行存储过程都不需再重新编译,而一般SQL语句每执行依次就编译一次,所以使用存储过程可提高数据库执行速度。 (2)封装复杂操作。当对数据库进行复杂操作时(如对多个表进行Update Insert,Query,Delete时),可用存储过程将此复杂操作封装起来与数据库提供的事务处理结合一起使用。 (3)实现代码重用。可以实现模块化程序设计,存储过程一旦创建,以后即可在程序中调用任意多次,这可以改进应用程序的可维护性,并允许应用程序统一访问数据库。 (4)增强安全性。可设定特定用户具有对指定存储过程的执行权限而不具备直接对存储过程中引用的对象具有权限;可以强制应用程序的安全性;参数化存储过程有助于保护应用程序不受SQL注入式攻击。 (5)减少网络流量。因为存储过程存储在服务器上,并在服务器上运行。一个需要数百行T-SQL代码的操作可以通过一条执行过程代码的语句来执行;而不需要在网络中发送数百行代码,这样就可以减少网络流量。 10.1.2 存储过程的分类 在SQL Server 2005中存储过程可以分为两类:系统存储过程和用户存储过程。 1.系统存储过程 系统存储过程是由SQL Server系统提供的存储过程,可以作为命令执行各种操作。 系统存储过程主要用来从系统表中获取信息,为系统管理员管理SQL Server 提供帮助,为用户查看数据库对象提供方便。例如,执行sp_helptext系统存储过程可以显示规则、默认值、未加密的存储过程、用户函数、触发器或视图的文本信息;执行sp_depends系统存储过程可以显示有关数据库对象相关性的信息;执行sp_rename系统存储过程可以更改当前数据库中用户创建对象的名称。SQL Server中许多管理工作是通过执行系统存储过程来完成的,许多系统信息也可以通过执行系统存储过程而获得。 系统存储过程定义在系统数据库master中,其前缀是sp_。在调用时不必在存储过程前加上数据库名。 有关系统存储过程的详细介绍请参考SQL Server 2005自带的联机丛书(即联机索引和帮助)。 除了以sp_为前缀的系统存储过程,我们还常见到以xp_为前缀的存储过程,这种存储过程为扩展存储过程。扩展存储过程主要用于扩展SQL Server的功能。 2.用户存储过程 用户存储过程是指用户根据自身需要,为完成某一特定功能,在用户数据库中创建的存储过程。用户创建存储过程时,存储过程名的前面加上“##”,是表示创建全局临时存储过程;在存储过程名的前面加上“#”,是表示创建局部临时存储过程。局部临时存储过程只能在创建它的会话中可用,当前会话结束时除去;全局临时存储过程可以在所有会话中使用,即所有用户均可以访问该过程。它们都保存在tempdb数据库中。 10.1.3存储过程的创建与管理 在SQL Server 2005 中通常可以使用两种方法创建存储过程:一种是使用图形化管理工具SQL
您可能关注的文档
- 商务英语阅读上册课件第三版辅导用书电子版国晓立 周树玲主编辅导用书A.pdf
- 商务英语阅读上册课件第三版辅导用书电子版国晓立 周树玲主编辅导用书B.pdf
- 世界贸易组织WTO课件教程薛荣久 ISBN9787810782944 PDFWTO_01.pdf
- 世界贸易组织WTO课件教程薛荣久 ISBN9787810782944 PDFWTO_02.pdf
- 世界贸易组织WTO课件教程薛荣久 ISBN9787810782944 PDFWTO_03.pdf
- 世界贸易组织WTO课件教程薛荣久 ISBN9787810782944 PDFWTO_05.pdf
- 世界贸易组织WTO课件教程薛荣久 ISBN9787810782944 PDFWTO_07.pdf
- 世界贸易组织WTO课件教程薛荣久 ISBN9787810782944 PDFWTO_08.pdf
- 世界贸易组织WTO课件教程薛荣久 ISBN9787810782944 PDFWTO_09.pdf
- 世界贸易组织WTO课件教程薛荣久 ISBN9787810782944 PDFWTO_10.pdf
- SQL课件Server 2005案例教程周仁云 ISBN 9787811343960 PPT第11章.ppt
- SQL课件Server 2005案例教程周仁云 ISBN 9787811343960 PPT第12章.ppt
- SQL课件Server 2005案例教程周仁云 ISBN 9787811343960 PPT第13章.ppt
- SQL课件Server 2005案例教程周仁云 ISBN 9787811343960 PPT第14章.ppt
- 会计报表分析课件孙桂珍 ISBN9787811348255 PPT第三章 企业长期偿债能力分析PPT.ppt
- 会计报表分析课件孙桂珍 ISBN9787811348255 PPT第四章企业获利能力分析PPT.ppt
- 会计报表分析课件孙桂珍 ISBN9787811348255 PPT会计报表分析第二章PPT.ppt
- 会计基础课件史玉光 ISBN9787566307347 PPT第1章总论.ppt
- 会计基础课件史玉光 ISBN9787566307347 PPT第4章复式记账原理.ppt
- 会计基础课件史玉光 ISBN9787566307347 PPT第5章会计处理方法.ppt
最近下载
- 19.2 家庭电路的基本组成 教学设计.docx VIP
- 新生儿巨细胞病毒感染.pptx VIP
- 旁站监理方案玉门市高标准农田建设(水利监理).pdf VIP
- 新生儿感染性肺炎诊疗指南.pptx VIP
- 高中数学压轴培优教程(圆锥曲线篇)-第3章 观点篇.docx VIP
- 城市轨道交通车辆制动技术项目11 EP2002制动系统.ppt VIP
- 高中数学压轴培优教程(圆锥曲线篇)-第2章技法篇.pdf VIP
- 高中数学培优教程(圆锥曲线篇)-第1章基础篇.pdf VIP
- 备考2025高考数学一轮知识清单 导数压轴大题归类 (原卷版).pdf VIP
- 《30万吨年产量的牛皮纸板流送抄纸工段初步工艺设计》20000字.docx
原创力文档

文档评论(0)