《(2.1.8)--实验八存储过程的创建与管理(SQLServer版)《数据库系统概论》》由会员分享,可在线阅读,更多相关《(2.1.8)--实验八存储过程的创建与管理(SQLServer版)《数据库系统概论》(3页珍藏版)》请在金锄头文库上搜索。
1、实验八实验八 存储过程的创建与管理存储过程的创建与管理 一、实验目的一、实验目的 通过本实验使学生理解存储过程的概念及作用,掌握存储过程的创建和执行,并掌握存储过程的查看、修改和删除。 二、实验内容二、实验内容 1、创建存储过程。 2、修改存储过程。 3、执行存储过程。 4、删除存储过程。 三、实验步骤三、实验步骤 (一)创建存储过程(一)创建存储过程 1、利用 SQL Server Management Studio 模板创建存储过程。 步骤如下: 展开 JWGL 数据库的“可编程性”结点。 在列表中右击“存储过程”结点出现快捷菜单,选择“新建存储过程”命令,在出现的模板中修改要创建的存储过
2、程的名称,添加存储过程所包含的 SQL 语句。 修改完毕,单击“执行”按钮即可创建一个存储过程。 2、利用 T-SQL 语言创建存储过程 实验实验 8.1 在 JWGL 数据库中创建名为 P_Student_Grade 的存储过程,要求查询每个学生各门课程的成绩,包括每个学生的学号、姓名、课程号、课程名和成绩。 在查询编辑器窗口中输入下列存储过程语句: USE JWGL GO CREATE PROCEDURE P_Student_Grade AS SELECT Student.StuNo,Student.StuName,Course.CouNo,Course.CouName,SC.Grade
3、FROM Student,Course,SC WHERE Student.StuNo=SC.StuNo AND Course.CouNo=SC.CouNo GO 实验实验 8.2 创建名称为 P_Course_AVG 的存储过程,要求输入某门课程名称, 能够查询到该课程学生的平均成绩。 在查询编辑器窗口中输入该存储过程的语句: USE JWGL GO CREATE PROCEDURE P_Course_AVG Course_name nvarchar(10) AS SELECT AVG(Grade)As 平均成绩 FROM Course,SC WHERE Course.CouNo=SC.Cou
4、No And CouName= Course_name GO (二)修改存储过程(二)修改存储过程 实验实验 8.3 修改存储过程 P_Course_AVG,要求输入课程名称,能够根据该课程学生的平均成绩显示提示信息。例如平均成绩在 80 分以上,显示“此课程成绩良好,平均成绩为*分” ,否则显示“此课程成绩一般,平均成绩为*分” 。 在查询编辑器窗口中输入以下语句: USE JWGL GO ALTER PROCEDURE P_Course_AVG Course_name nvarchar(10) AS DECLARE Gavg int SELECT Gavg=AVG(Grade) FROM
5、Course,SC WHERE Course.CouNo=SC.CouNo And CouName=Course_name IF Gavg80 PRINT 此课程成绩良好,平均成绩为+CONVERT(char(2),Gavg)+分 ELSE PRINT 此课程成绩一般,平均成绩为+CONVERT(char(2),Gavg)+分 GO (三)调用存储过程(三)调用存储过程 实验实验 8.4 调用存储过程 P_Student_Grade,显示学生成绩信息。 在查询编辑器窗口中输入调用该存储过程的语句: USE JWGL GO EXEC P_Student_Grade GO 执行该语句,显示学生各门
6、课程的成绩。 实验实验 8.5 调用存储过程 P_Course_AVG, 显示 “大学语文” 课程的成绩信息, 即显示 “大学语文”课程的综合成绩是否良好。 在查询编辑器窗口中输入调用该存储过程的语句: USE JWGL GO EXEC P_Course_AVG 大学语文 GO (四)删除存储过程(四)删除存储过程 实验实验 8.6 删除存储过程 P_Student_Grade 和 P_Course_AVG。 在查询编辑器窗口中输入如下语句: USE JWGL GO DROP PROCEDURE P_Student_Grade DROP PROCEDURE P_Course_AVG GO 本实验指导书参考数据库系统及应用实验与课程设计指导SQL Server 2008. 刘金岭.