数据库实验9 存储过程
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验九存储过程
学号_ _ 姓名 _ __ 班级 __专业___
本次实验需提交
一、实验目的
1)掌握创建存储过程的方法。
2)掌握存储过程的执行方法。
二、实验内容
创建存储过程的定义:
Create procedure 过程名@参数1 类型(宽度),
@参数2 类型(宽度),
…
@参数n 类型(宽度)
As
过程体
1、使用T-SQL语句创建存储过程
(1)创建不带参数的存储过程
创建一个名为stu_proc1的存储过程,该存储过程能查询出051班学生的资料,包括学生的学号,姓名,班号、选修的课程名及成绩。
T-SQL语句:
CREATE PROCEDURE stu_proc1
As
SELECT student.sno,sname,classno,cname,grade
FROM student,course,sc
WHERE classno='051' and
student.sno=sc.sno and
o=o
执行存储过程的T-SQL语句:
EXEC stu_proc1
(2)创建带参数的存储过程
创建一个名为stu_proc2的存储过程,查询某门课程的学分。课程名作为该存储过程的参数。
T-SQL语句:
CREATE PROCEDURE stu_proc2
@cname varchar(10)
As
SELECT credit
FROM course
Where cname=@cname
执行存储过程查询“高数”的学分的T-SQL语句:
EXEC stu_proc2 '高数'
执行存储过程查询选修“c语言程序设计”的学分的T-SQL语句:
EXEC stu_proc2 'c语言程序设计'
(3)创建一个名为course_sum的存储过程,可查询某门课程考试的总成绩、选修人数。课程名作为该存储过程的参数。
T-SQL语句:
CREATE PROCEDURE course_sum
@cname varchar(10)
as
select sum(grade),count(sno)
from sc,course
where cname=@cname and o=o
group by o
执行存储过程查询“高数”的总成绩、选修人数的T-SQL语句:
EXEC course_sum '高数'
(4)创建一个名为stu_proc3的存储过程,查询某系、某学号的学生的学号、姓名、选修课程名、成绩。系名和学号作为该存储过程的参数。
T-SQL语句:
CREATE PROCEDURE stu_proc3
@sdept varchar(10),
@sno varchar(10)
as
select student.sno,sname,cname,grade
from student,course,sc
where student.sno=sc.sno and
o=o and
sdept=@sdept and
sno=@sno
执行该存储过程查询CS系,学号为’20050002’信息的T-SQL语句:
EXEC stu_proc3 'CS', '20050002'