关系数据库与SQLServer2005教学课件作者龚小勇第25讲存储过程课件

关系数据库与SQLServer2005教学课件作者龚小勇第25讲存储过程课件

ID:43700913

大小:250.00 KB

页数:20页

时间:2019-10-12

关系数据库与SQLServer2005教学课件作者龚小勇第25讲存储过程课件_第1页
关系数据库与SQLServer2005教学课件作者龚小勇第25讲存储过程课件_第2页
关系数据库与SQLServer2005教学课件作者龚小勇第25讲存储过程课件_第3页
关系数据库与SQLServer2005教学课件作者龚小勇第25讲存储过程课件_第4页
关系数据库与SQLServer2005教学课件作者龚小勇第25讲存储过程课件_第5页
资源描述:

《关系数据库与SQLServer2005教学课件作者龚小勇第25讲存储过程课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第9章存储过程和触发器——存储过程的使用主讲人:段利文第25讲复习:使用批处理、脚本、注释标识符、常量、变量T-SQL系统内置函数流程控制语句begin…end语句if…else、ifexists语句while、break和continue语句waitfor语句return语句第9章存储过程和触发器——存储过程的使用学习目标认知目标:掌握存储过程的定义及优点了解常用的系统存储过程能力目标:掌握存储过程的创建和执行(重点)掌握存储过程中输入参数和输出参数的设置和使用方法。(难点)一、存储过程的基本概念——1

2、.存储过程的含义及功能存储过程的含义是一组预先写好的能实现某种功能的T-SQL程序,是存储在服务器上的预编译集合。存储过程是一种独立的数据库对象,在服务器上创建和运行。类似于编程语言中的过程或函数。一、存储过程的基本概念——2.存储过程的优点模块化编程执行速度快效率高存储过程在执行1次后,其执行计划就保存在内存中,以后在执行时就不必再进行编译和优化。减少网络流量由于存储过程是存在服务器上的一组T-SQL,在客户端调用时,可以只用一条调用语句即可执行。提供一种安全机制可以限制用户访问存储过程中涉及到的表的权

3、限,只授予执行存储过程的权限,用户只能通过存储过程来访问表,从而保证了数据的安全性。一、存储过程的基本概念——3.存储过程的类型系统存储过程是指由SQLServer提供的存储过程,可以作为命令执行。系统存储过程定义在系统数据库master中,其前缀是sp_。用户存储过程是由用户在当前数据库中创建的存储过程。最好不要以sp开头。若用户定义的存储过程与系统存储过程同名,用户定义的存储过程永远不会执行。二、创建和执行存储过程——1.简单存储过程创建格式:createproc[edure]存储过程名asSQL语句

4、说明:createprocedure不能与别的T-SQL语句位于同一个批中。相应的执行格式:[exec]存储过程名二、创建和执行存储过程——1.简单存储过程实例1:创建1个简单的存储过程p_cj1,查询所有学生的学号、姓名、课程号和成绩信息,并按成绩降序排列。usexscjgocreateprocedurep_cj1asselectxsqk.学号,姓名,课程号,成绩fromxsqk,xs_kcwherexsqk.学号=xs_kc.学号orderby4descgoexecp_cj1--执行存储过程二、创建和

5、执行存储过程——2.使用输入参数创建格式:createproc[edure]存储过程名@形参数据类型[=默认值],…nasSQL语句相应的执行格式:[execute]存储过程名[@实参=]值,…n输入参数的传递方式有两种:按位置传递:直接给出参数的值,实参与形参一一对应通过参数名传递:使用“参数名=参数值“的形式,参数可以任意顺序给出。输入形参:接收从外部传递给存储过程的数据。输入实参:将数据传递给存储过程。二、创建和执行存储过程——2.使用输入参数实例2:创建1个带有输入参数的存储过程p_cj2,查询指

6、定课程号(作为输入参数)的学生成绩信息。createprocedurep_cj2@kchchar(3)=‘101’--有默认值的输入形参:接收外部传递的数据asselect*fromxs_kcwhere课程号=@kchgoexecp_cj2--(1)使用默认值执行存储过程execp_cj2‘102‘--(2)按位置传递参数execp_cj2@kch=‘103‘--(3)通过参数名传递参数输入实参:将数据传递给存储过程。二、创建和执行存储过程——2.使用输入参数课堂练习1:创建并执行带输入参数的存储过程p_

7、xsqk,查询指定学号(作为输入参数)的学生姓名、课程号、成绩。createprocedurep_xsqk@xhchar(6)asselect姓名,课程号,成绩fromxsqk,xs_kcwherexsqk.学号=xs_kc.学号andxsqk.学号=@xhgoexecp_xsqk‘020102‘--(1)按位置传递参数execp_xsqk@xh=‘020103‘--(2)通过参数名传递参数注意:因输入参数没有默认值,所以不能用“execp_xsqk”二、创建和执行存储过程——3.使用输出参数创建格式:c

8、reateproc[edure]存储过程名@形参数据类型output,…nasSQL语句相应的执行格式:[execute]存储过程名@实参output,…n说明:输出实参和输出形参的名字可以相同,也可以不同。使用时,要先声明输入和输出实参变量。输出形参:将数据返回给调用它的程序。输出实参:从存储过程将数据带回。二、创建和执行存储过程——3.使用输出参数实例3:创建1个带有输入参数和输出的存储过程p_kh,返回指定教师(作为输入

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。