实验九存储过程
学号_ _ 姓名 _ __ 班级 __专业___
本次实验需提交
一、实验目的
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'。