实验六 存储过程和触发器

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验六使用SQLServer查询分析器创建存储过程和触发器

一、实验目的

(1) 掌握存储过程的实现;

(2) 掌握触发器定义和使用;

(3) 利用存储过程和触发器维护数据完整性;

(4) 了解使用存储过程来进行数据库应用程序的设计。

二、实验内容

(1) 编写存储过程;

(2) 创建触发器。

三、实验步骤:(包含实验记录,提供的数据、图表等资料内容)

1、对教学管理数据库,编写存储过程,完成下面功能:

(1)①创建一个无参存储过程StuScoreInfo,查询以下信息:学号、姓名、性

别、课程名称、考试成绩。

②写出存储过程的调用语句。

(2) ①创建一个带参数的存储过程stu_info,该存储过程根据传入的学生编号

在S表中查询此学生的信息。

②写出存储过程的调用语句。

(3) ①创建一个带参数的存储过程StuScoreInfo2,该存储过程根据传入的学生

编号和课程号查询以下信息:学号、姓名、性别、课程名称、考试成绩。

②写出存储过程的调用语句。

(4) ①编写带参数的存储过程,根据传入的课程名称统计该课程的平均成绩。

②写出存储过程的调用语句。

2、对教学管理数据库,编写触发器,完成下面功能:

(1) 在SC表上创建一个删除学生成绩事件的触发器,触发动作为输出:“对

不起,学生成绩不允许删除”,并且回滚删除事务。

(2) 创建一个删除学生的触发器,删除学生前要先删除学生成绩。

(3) 创建一个AFTER触发器,完成的功能是:在sc表上创建一个插入、更新

类型的触发器scCheck,当在sc表的grade字段中插入或修改考试分数后,触

发该触发器,检查分数是否在0-100之间,如果不在0-100之间就输出“输入分数错误”。

(4) 定义一个学生查询所有选课成绩的视图VIEW_SC,要求显示学号、学生

姓名、课程名、学分、成绩。在该视图上创建一个插入数据的INSTEAD OF 触发器,代替插入命令执行查询操作。

四、实验报告要求

1、用SQL表示实验内容里的相应语句;

2、列出遇到的问题和解决办法;

3、列出没有解决的问题;

4、写明实验所采用的实验环境。(操作系统、数据库管理系统)

相关文档
最新文档