资源描述
《存储过程》练习
1、在“教务管理系统”数据库中创建一个名为ProcStudentInfo的存储过程,它返回学生的学号、姓名、性别、班级编号、年级和籍贯信息。
USE 教务管理系统
CREATE PROCEDURE Proc_StudentInfo
AS
SELECT 学号,姓名,性别,班级编号,年级,籍贯 FROM 学生信息
2、用EXECUTE执行Proc_StudentInfo存储过程。
USE 教务管理系统
EXECUTE Proc_StudentInfo
3、创建一个存储过程,用于返回“教务管理系统”数据库上某个班级中所有学生的信息。
USE 教务管理系统
CREATE PROCEDURE Proc_GetClassStudent1
@ClassID varchar(14)
AS
SELECT 学号,姓名,性别,班级编号,年级,籍贯 FROM 学生信息 WHERE 班级编号=@ClassID
4、创建一个存储过程,用于返回“教务管理系统”数据库上某个班级中所有学生的信息,默认班级编号为'20031340000102' 。
USE 教务管理系统
CREATE PROCEDURE Proc_GetClassStudent2
@ClassID varchar(14)= '20031340000102'
AS
SELECT 学号,姓名,性别,班级编号,年级,籍贯 FROM 学生信息 WHERE 班级编号=@ClassID
5、使用不同参数传递值方式执行存储过程。
EXEC Proc_GetClassStudent2
EXEC Proc_GetClassStudent2 '20031340000101'
EXEC Proc_GetClassStudent2 @ClassID='20031340000104'
6、创建一个存储过程,用于返回“教务管理系统”数据库上某个班级中的学生人数,默认班级编号为‘20031340000102’ 。
CREATE PROCEDURE Proc_GetClassStudent3
@ClassID varchar(14)= '20031340000102'
@StudentCount int OUTPUT
AS
SELECT @StudentCount=COUNT(学号) FROM 学生信息 WHERE 班级编号=@ClassID
7、定义一个变量用来存储存储过程Proc_GetClassStudent3返回的值。
DECLARE @StudentCount int
EXEC Proc_GetClassStudent8 '20031340000102',@StudentCount OUTPUT
SELECT @StudentCount
8、创建一个返回执行代码为100的存储过程。
USE 教务管理系统
GO
CREATE PROCEDURE Proc_GetClassStudent4
@ClassID varchar(14)
AS
BEGIN
SELECT 学号,姓名,性别,班级编号,年级,籍贯FROM 学生信息WHERE 班级编号=@ClassID
RETURN 100
END
9、执行存储过程Proc_GetClassStudent2和Proc_GetClassStudent4,并定义两个个变量存储执行返回代码。
DECLARE @return1 int,@return2 int
EXEC @return1=Proc_GetClassStudent2 '20031340000102'
EXEC @return2=Proc_GetClassStudent4 '20031340000102'
SELECT @return1
SELECT @return2
10、在TeachingManageSYS中创建一个名为GetStudentScore的存储过程,用于实现:由执行该存储过程时提供的学生的Sno(学号)查询其每门课程的Score(成绩),并返回学生的Sno(学号)、Sname(姓名)、Ssex(性别)、Cname(课程的课程名)
(使用“学生成绩查询”存储过程,查询学号为“010101”和“010201”的学生的成绩。)
11、在TeachingManageSYS中创建一个名为GetTeacherOrStudentInfo的存储过程,用于实现:由执行该存储过程时提供的查询类别(“教师”或“学生”,默认值为“学生”)和学生姓名或教师姓名,查询学生或教师信息。
(使用教师姓名“邵军”和学生姓名“付佳燕”分别执行存储过程)
12、在commoditysell中创建一个名为GetFactProd的存储过程,用于实现:由执行该存储过程时提供的厂家的名称,查询其生产的产品信息,返回产品的ProdID、ProdName、UnitPrice和StockAmount。
(使用“四川绵阳”和“上海黄埔”两个厂家的名称执行存储过程)
13、在commoditysell中创建一个名为SellProdAmount的存储过程,用于实现:由执行该存储过程时提供的商场的名称,查询其销售的产品数量,并用输出参数输出销量数。
(使用“双桥子商场”和“十陵商场”两个商场名称执行程存储过程)
14、在demodb中创建一个名为GetStudentScoreInfo的存储过程,用于实现:由执行该存储过程时提供的学生姓名,使用输出参数输出学生成绩的总分、最高分和最低分。
(使用“冬云”和“张宇宏”两个学生姓名执行存储过程)
展开阅读全文