- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第7章-游标、存储过程和触发器解析
创建和执行存储过程 (4)创建带多个输入参数并有默认值的存储过程 [例5] 查询某个学生某门课程的考试成绩,若没有指定课程,则默认课程为“数据库基础” CREATE PROCEDURE student_grade2 @s_name char(10),@c_name char(20)=‘数据库基础’ AS SELECT Sname, Cname, Grade FROM s,sc,c WHERE s.sno = sc.sno and c.cno = sc.cno and sname = @s_name and cname = @c_name * 7.2 存储过程 创建和执行存储过程 (4)创建带多个输入参数并有默认值的存储过程 调用参数有默认值的存储过程 EXEC student_grade3 吴宾 等价于执行: EXEC student_grade3 吴宾,数据库基础 * 7.2 存储过程 创建和执行存储过程 (5)创建带多个输入参数并均指定默认值的存储过程 [例6]查询指定系、指定性别学生中年龄大于等于指定年龄的学生情况。系的默认值为“计算机系”,性别的默认值为“男生”,年龄的默认值为20 CREATE PROC P_Student @dept char(20) = 计算机系, @sex char(2) = 男, @age int = 20 AS SELECT * FROM Student WHERE Sdept=@dept AND Ssex=@sex AND Sage=@age * 7.2 存储过程 创建和执行存储过程 (5)创建带多个输入参数并均指定默认值的存储过程 执行1:不提供任何参数值。 EXEC P_Student 执行2:提供全部参数值。 EXEC P_Student 信息系, 女, 19 执行3:只提供第二个参数的值。 EXEC P_Student @sex = 女 执行4:只提供第一个和第三个参数的值。 EXEC P_Student @sex = 女 , @age = 19 * 7.2 存储过程 创建和执行存储过程 (6)创建带有输出参数的存储过程 [例7] 计算两个数的和。 CREATE PROCEDURE sum1 @var1 int,@var2 int,@var3 int output As Set @var3=@var1 * @var2 执行此存储过程: Declare @res int Execute sum1 5,7,@res output Print @res * 7.2 存储过程 创建和执行存储过程 (6)创建带输入参数和一个输出参数的存储过程 [例8] 统计指定课程的平均成绩,并将统计的结果用输出参数返回。 CREATE PROCEDURE AvgGrade @cn char(20), @avg_grade int output AS SELECT @avg_grade = AVG(Grade) FROM SC,C WHERE C.Cno = SC.Cno and Cname = @cn * 7.2 存储过程 创建和执行存储过程 (7)创建带输入参数和多个输出参数的存储过程 [例9] 统计指定课程的平均成绩和选课人数,将统计的结果用输出参数返回。 CREATE PROCEDURE Avg_Count @cn char(20), @avg_grade int output, @total int output AS SELECT @avg_grade = AVG(Grade), @total = COUNT(*) FROM SC ,C WHERE C.Cno = SC.Cno and Cname = @cn * 7.2 存储过程 创建和执行存储过程 (8)创建删除数据的存储过程 [例10] 删除考试成绩不及格学生的修课记录。 CREATE PROCEDURE p_DeleteSC AS DELETE FROM sc WHERE grade 60 * 7.2 存储过程 创建和执行存储过程 (9)创建修改数据的存储过程 [例11] 将指定课程的学分增加2分。 CREATE PROCEDURE p_UpdateCredit @cn varchar(20) AS UPDATE course SET credit=credit+2 WHERE cname = @cn * 7.2 存储过程 删除存储过程 DROP PROC [ EDU
您可能关注的文档
最近下载
- 金属工艺学 全套课件.ppt VIP
- 外研版(三起)(2024)三年级下册英语Unit 4《What’s your hobby?》第1课时教案 .pdf VIP
- Unit 4 What's your hobby 第三课时教案 2024-2025学年度 外研版英语三年级下册.docx VIP
- 老年患者麻醉管理专家共识.pptx
- 景区运营管理合作协议.doc VIP
- HGT21629-2021管架标准图图集标准.docx VIP
- 保健食品要掌握的全部基本知识【58页】.pptx VIP
- MDCG 2020-7 上市后临床随访 (PMCF) 计划模板中文版.docx VIP
- 基坑土方回填施工策划方案.doc VIP
- 半导体材料课件课件.pptx VIP
文档评论(0)