实验十 存储过程的创建与使用
一、实验目的
本实验的目的是使学生进一步掌握SQL Server存储过程的创建及使用方法,加深对SQL存储过程的理解。通过对存储过程的调用体会其作用。
二、实验准备
结合课堂教学内容,了解存储过程的相关知识,掌握存储过程的定义,理解存储过程的调用及其参数的使用方法。
三、实验要求
1. 掌握T-SQL创建触发器语句Create procedure的使用。
2. 完成所规定的存储过程定义要求。
3. 调用(EXEC)所创建的过程,检查过程的执行结果。
4.注意操作结果的截图与保存,供撰写实验报告使用。
四、实验内容
1、创建一个不带参数的存储过程p_stu_info1,实现对满足要求的学生基本信息的查询。
要求:所有年龄<21岁的男同学
- 创建一个带有参数的存储过程p_stu_info2,实现对满足要求的学生基本信息的查询。
要求:输入参数为学号,与指定学号的学生同龄的所有同学。
- 创建一个存储过程p_stu_info3,根据输入的学号,查询某学生的基本信息。
要求:输入参数为学号。
- 创建一个存储过程p_stu_grade,根据输入的学号,返回其选课及其成绩。
要求:输入参数为学号。
5.使用SQL语句分别执行p_stu_info1、p_stu_info2、p_stu_info3和p_stu_grade,并查看显示结果。
五、实验步骤
在查询分析器中完成实验内容。
--创建一个不带参数的存储过程p_stu_info1,实现对满足要求的学生基本信息的查询
create procedure p_stu_info1 as select * from student where sage<21
go
--创建一个带有参数的存储过程p_stu_info2,实现对满足要求的学生基本信息的查询
create procedure p_stu_info2(@sno char(8)) as select * from student where sage=(select sage from student where sno=@sno)
go
--创建一个存储过程p_stu_info3,根据输入的学号,查询某学生的基本信息
create procedure p_stu_info3(@sno char(8)) as select * from student where sno=@sno
go
--创建一个存储过程p_stu_grade,根据输入的学号,返回其选课及其成绩
create procedure p_stu_grade(@sno char(8)) as select * from sc where sno=@sno
go
--使用SQL语句分别执行p_stu_info1、p_stu_info2、p_stu_info3和p_stu_grade,并查看显示结果
exec p_stu_info1
exec p_stu_info2 '20130101'
exec p_stu_info3 '20130101'
exec p_stu_grade '20130101'
--大吉大利,今晚AC