存储过程ppt课件_第1页
存储过程ppt课件_第2页
存储过程ppt课件_第3页
存储过程ppt课件_第4页
存储过程ppt课件_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1存储过程概述存储过程概述创建和管理存储过程创建和管理存储过程在存储过程中运用参数在存储过程中运用参数第第7章章 存储过程存储过程2概概 述述 可以出于任何运用可以出于任何运用SQLSQL语句的目的来运用存储过程,它具语句的目的来运用存储过程,它具有以下优点:有以下优点: 可以在单个存储过程中执行一系列可以在单个存储过程中执行一系列SQLSQL语句。语句。 可以从本人的存储过程内援用其他存储过程,这可以简可以从本人的存储过程内援用其他存储过程,这可以简化一系列复杂语句。化一系列复杂语句。 存储过程在创建时即在效力器上进展编译,所以执行起存储过程在创建时即在效力器上进展编译,所以执行起来比单个来

2、比单个SQLSQL语句快,且能减少网络通讯的负担。语句快,且能减少网络通讯的负担。3存储过程的初始处置存储过程的初始处置项存入项存入 sysobjects sysobjects和和 syscomments syscomments 表表 编译过的执行方案编译过的执行方案放入过程缓存放入过程缓存编译编译优化优化解析解析4存储过程的后续处置续存储过程的后续处置续检索到的执行方案检索到的执行方案未用过的方案过时被去除未用过的方案过时被去除执行方案执行方案执行上下文执行上下文SELECT *FROM dbo.memberWHEREmember_no = ?衔接衔接18082衔接衔接2衔接衔接324100

3、35存储过程概述存储过程概述创建和管理存储过程创建和管理存储过程在存储过程中运用参数在存储过程中运用参数第第7章章 存储过程存储过程6创建存储过程创建存储过程创建存储过程创建存储过程只能在当前数据库内创建存储过程,除了暂时存只能在当前数据库内创建存储过程,除了暂时存储过程。暂时存储过程总是创建在储过程。暂时存储过程总是创建在 tempdb 数数据库中据库中存储过程可以援用表、视图、用户定义函数、其存储过程可以援用表、视图、用户定义函数、其他存储过程以及暂时表他存储过程以及暂时表假设存储过程创建了部分暂时表,那么当存储过假设存储过程创建了部分暂时表,那么当存储过程执行终了后暂时表消逝程执行终了后

4、暂时表消逝USE NorthwindGOCREATE PROC dbo.OverdueOrdersAS SELECT * FROM dbo.Orders WHERE RequiredDate GETDATE() AND ShippedDate IS NullGO7执行存储过程执行存储过程执行存储过程执行存储过程不带参数的情况:不带参数的情况:EXECUTE 存储过程名存储过程名 WITH RECOMPILE存储过程在执行后都会前往一个整型值。假设执行胜利存储过程在执行后都会前往一个整型值。假设执行胜利,那么前往,那么前往0 0;否那么前往;否那么前往-1-1-99-99之间的数值。也可以之间的

5、数值。也可以运用运用RETURNRETURN语句来指定一个前往值。语句来指定一个前往值。USE NorthwindGOEXEC OverdueOrdersGO 8修正和删除存储过程修正和删除存储过程修正存储过程用 ALTER PROCEDURE 中的定义取代现有存储过程原先的定义,但保管权限分配USE NorthwindGOALTER PROC dbo.OverdueOrdersASSELECT CONVERT(char(8), OrderDate, 1) OrderDate, OrderID, CustomerID, EmployeeIDFROM OrdersWHERE RequiredDa

6、te GETDATE() AND ShippedDate IS NullORDER BY RequiredDateGO 9修正和删除存储过程续修正和删除存储过程续删除存储过程语法:DROP PROCEDURE 存储过程名 ,.n用 DROP PROCEDURE 语句从当前数据库中移除用户定义存储过程删除存储过程的本卷须知在删除存储过程之前,执行系统存储过程 sp_depends 检查能否有对象依赖于此存储过程10存储过程概述存储过程概述创建和管理存储过程创建和管理存储过程在存储过程中运用参数在存储过程中运用参数第第7章章 存储过程存储过程11在存储过程中运用参数在存储过程中运用参数运用输入参数

7、运用输入参数运用输入参数执行存储过程运用输入参数执行存储过程运用输出参数前往值运用输出参数前往值显式地重新编译存储过程显式地重新编译存储过程12运用输入参数运用输入参数输入参数允许传送信息到存储过程内在 CREATE PROCEDURE 中指定 参数名 数据类型 =默许值 USE NorthwindGOCREATE PROC dbo.OverdueOrders2Employee_ID int ,Order_date datetimeASSELECT OrderDate, OrderID, CustomerID, EmployeeIDFROM OrdersWHERE EmployeeID = E

8、mployee_ID and OrderDate Order_dateGO 13运用输入参数执行存储过程运用输入参数执行存储过程经过参数名传送值(顺序无所谓) 经过位置传送参数顺序坚持一致EXEC OverdueOrders2 Employee_ID = 1 , Order_date = 2019-11-8EXEC OverdueOrders2 1 , 2019-11-8EXEC OverdueOrders2 Order_date = 2019-11-8, Employee_ID = 1 14运用输出参数前往值运用输出参数前往值输出参数:以 OUTPUT 关键字指定的变量CREATE PROC

9、 proc1A int , B int , RESULT int OUTPUTASSET RESULT = A * BGO 执行有输出参数的存储过程DECLARE answer intEXEC proc1 4, 7, answer OUTPUTSELECT answer as ANSWER 必需定义一个变量,必需定义一个变量,以接受前往值以接受前往值写上写上OUTPUT,才才可以接纳到前往值可以接纳到前往值15显式地重新编译存储过程显式地重新编译存储过程存储过程可以显式地重新编译,但应尽量少做,仅当存储过程所援用的表中的数据发生宏大的变化时存储过程所援用的对象的架构发生变卦时,如添加删除列、规

10、那么、约束16显式地重新编译存储过程续显式地重新编译存储过程续三种显式重新编译存储过程的方法CREATE PROCEDURE WITH RECOMPILEEXECUTE WITH RECOMPILE CREATE PROC proc1 A int , B int , RESULT int OUTPUT WITH RECOMPILE AS SET RESULT = A * B GO 不对该存储过程方案进展高速缓存EXEC proc1 4, 7, answer OUTPUT WITH RECOMPILE 17显式地重新编译存储过程续显式地重新编译存储过程续三种显式重新编译存储过程的方法sp_recompileEXEC sp_recompile proc1阐明:下次存储过程proc1执行时重新编译。EXEC sp_recompile Orders阐明:作用于表Orders上的存储过程在下次运转时重新编译。18随堂练习随堂练习学生表Studentsid,sname,sage,sdept 课程表Course(cid,cname,cr

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论