《sqlserver2005》课件第七章存储过程和触发器.ppt

《sqlserver2005》课件第七章存储过程和触发器.ppt

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《sqlserver2005》课件第七章存储过程和触发器

第七章 存储过程和触发器 7.1 存储过程 一、存储过程简介 是数据库对象的一种,它类似于其他计算机语言中的一段程序,可以方便地建立和执行,用于完成某项具体的操作。 1、过程的概念 是存储在服务器上的一组预编译的T-SQL语句,是封装重复任务操作的一种方法,支持用户提供的变量,具有强大的编程功能。 2、存储过程的作用 将一组预编译的T-SQL语句(即一个批处理)作为数据库对象保存,以备后用,为重复调用执行该组语句提供极大的方便,并且执行速度快。 7.1 存储过程 一、存储过程简介 3、存储过程分类 1)系统存储过程 存储于MASTER数据库中并以SP_为前缀,系统自带的存储过程,用以执行特定的功能。 2)用户自定义的存储过程 由用户创建并能完成特定功能的存储过程。 注:用户定义的存储过程必须创建在当前的数据库中。 7.1 存储过程 二、存储过程的创建 1、创建存储过程 1)使用企业管理器 步骤(略) 例1:创建proc_1的存储过程,产生及格学生基本情况列表。 在企业管理器中新建存储过程,修改过程名,并在as后输入以下内容: select * from stu,xk where stu.sno=xk.sno and cj=60 7.1 存储过程 二、存储过程的创建 1、创建存储过程 2)使用T-SQL语言 法格式: create proc[edure] 存储过程名 [参数名 类型 [=默认值],......] as SQL语句 [SQL语句......] 7.1 存储过程 二、存储过程的创建 1、创建存储过程 例2:建立proc_stu1 存储过程。查询cj在80-85之间并是女学生的信息。 CREATE PROCEDURE proc_stu1 AS SELECT * FROM stu,xk WHERE xk.sno=stu.sno and (cj between 80 and 185) and sex=na 7.1 存储过程 二、存储过程的创建 例3、建立proc_stu2 存储过程。根据学号查询学生的选课信息(学号、姓名、课程号和成绩)。 CREATE PROCEDURE proc_stu2 @sno char(7) AS if exists(select * from stu where sno=@sno) SELECT stu.sno, sname, kch, cj FROM stu,xk WHERE stu.sno=xk.sno AND stu.sno=@sno else print 该学生没有选课! 7.1 存储过程 三、执行存储过程 直接使用EXECUTE语句执行存储过程 1、执行不带参数的存储过程: EXEC 存储过程名 2、执行带参数的存储过程: 1)带1个参数为:EXEC 存储过程名 参数名=参数值 2)带多个参数为:EXEC 存储过程名 参数名1=参数值1,参数名2=参数值2,...... 7.1 存储过程 三、执行存储过程 如:EXEC proc_stu1 EXEC proc_stu2 @sno=’0801001’ 7.1 存储过程 三、执行存储过程 例4:建立一个名为proc_xk的存储过程,功能是根据参数指定的学生号、课程号和成绩来修改某位同学的某门课程的成绩,同时要求显示修改前后的记录内容。 Create proc proc_xk @xh char(7),@kch char(3),@cj int as select * from xk where sno=@xh and kch=@kch update xk set cj=@cj where sno=@xh and kch=@kch select * from xk where sno=@xh and kch=@kch 7.1 存储过程 三、执行存储过程 执行时,可用以下两种方法将多个参数传送到存储过程中: ①根据参数名称给定,此时各参数的位置可任意; 如: exec proc_xk @xh=‘0801001’,@kch=‘a1’,@cj=67 或: exec proc_xk @kch=‘a1’, @cj=67,@js=‘0801001 ②根据参数的位置给定,此时各参数必须按定义时的顺序依次列出; 如:exec proc_xk 0501001,a1,67 7.2 触发器 一、触发器的概念

文档评论(0)

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

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

1亿VIP精品文档

相关文档