第25讲存储过程题稿.ppt

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * * * * 第9章 存储过程与触发器—存储过程的使用 第25讲 SQL Server 2008 第9章 存储过程与触发器 —— 存储过程的使用 第25讲 复习: 标识符、常量、变量 T-SQL系统内置函数 使用批处理 流程控制语句 begin…end语句 if…else语句 while、break和continue语句 waitfor语句 第9章 存储过程与触发器 —— 存储过程的使用 学习目标 认知目标: 掌握存储过程的定义及优点 了解常用的系统存储过程 能力目标: 掌握存储过程的创建和执行(重点) 掌握存储过程中输入参数和输出参数的设置和使用方法(难点) 一、存储过程的基本概念 ——1.存储过程的含义及功能 存储过程的含义 是一组T-SQL语句的预编译集合,能实现特定的功能。 存储过程是一种独立的数据库对象,在服务器上创建和运行。 类似于编程语言中的过程或函数。 一、存储过程的基本概念 ——2.存储过程的优点 模块化编程 执行速度快效率高 存储过程在执行1次后,其执行计划就保存在内存中,以后在执行时就不必再进行编译和优化。 减少网络流量 由于存储过程是存在服务器上的一组T-SQL,在客户端调用时,可以只用一条调用语句即可执行。 提供一种安全机制 可以限制用户访问存储过程中涉及到的表的权限,只授予执行存储过程的权限,用户只能通过存储过程来访问表,从而保证了数据的安全性。 一、存储过程的基本概念 ——3.存储过程的类型 系统存储过程 是指由SQL Server提供的存储过程,可以作为命令执行。 系统存储过程定义在系统数据库master中,其前缀是sp_。 用户存储过程 是由用户在当前数据库中创建的存储过程。 最好不要以sp开头。若用户定义的存储过程与系统存储过程同名,用户定义的存储过程永远不会执行。 二、创建和执行存储过程 ——1.简单存储过程 创建格式: create proc[edure] 存储过程名 as SQL语句 说明:create procedure不能与别的T-SQL语句位于同一个批中。 相应的执行格式: exec[ute] 存储过程名 二、创建和执行存储过程 ——1.简单存储过程 实例1:创建1个简单的存储过程p1,查询所有学生的学号、姓名、课程号和成绩信息,并按成绩降序排列。 create procedure p1 as select xsqk.学号,姓名,课程号,成绩 from xsqk, xs_kc where xsqk.学号=xs_kc.学号 order by 4 desc go exec p1 --执行存储过程 二、创建和执行存储过程 ——2.使用输入参数 创建格式: create proc[edure] 存储过程名 @形参 数据类型 [=默认值] ,…n as SQL语句 相应的执行格式: exec[ute] 存储过程名 [ @实参= ] 值 ,…n 输入参数的传递方式有两种: 按位置传递:直接给出参数的值,实参与形参一一对应 通过参数名传递:使用“参数名=参数值“的形式,参数可以任意顺序给出。 输入形参:接收从外部传递给存储过程的数据。 输入实参:将数据传递给存储过程。 二、创建和执行存储过程 ——2.使用输入参数 实例2:创建1个带有输入参数的存储过程p2,查询指定课程号(作为输入参数)的学生成绩信息。 create proc p2 @kch char(3)=‘101’ --有默认值的输入形参:接收外部传递的数据 as select * from xs_kc where 课程号= @kch go exec p2 --(1)使用默认值执行存储过程 exec p2 ‘102’ --(2)按位置传递参数 exec p2 @kch=‘103’ --(3)通过参数名传递参数 输入实参:将数据传递给存储过程。 二、创建和执行存储过程 ——2.使用输入参数 课堂练习1:创建并执行带输入参数的存储过程p3,查询指定学号(作为输入参数)的学生姓名、性别和所选课程号。 create proc p3 @xh char(10) as select 姓名,性别,课程号 from xsqk , xs_kc where xsqk.学号=xs_kc

文档评论(0)

希望之星 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档