《实验七触发器.pdf》由会员分享,可在线阅读,更多相关《实验七触发器.pdf(13页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、标准实验七触发器一、实验目的(1)理解触发器的用途、类型和工作原理(2)掌握利用 T-SQL 语句创建和维护触发器的方法(3)掌握利用企业管理器创建、维护触发器的方法二、实验内容1.创建 after 触发器(1)创建一个在插入时触发的触发器sc_insert,当向 sc 表插入数据时,须确保插入的学号已在 Student 表中存在,并且还须确保插入的课程号在 Course 表中存在;若不存在,则给出相应的提示信息,并取消插入操作,提示信息要求指明插入信息是学号不满足条件还是课程号不满足条件(注:Student 表与 sc 表的外键约束要先取消)。文案标准(2)为 Course 表创建一个触发器
2、 Course_del,当删除了 Course 表中的一条课程信息时,同时将表 sc 表中相应的学生选课记录删除掉。文案标准(3)在 Course 表中添加一个平均成绩 avg_Grade 字段(记录每门课程的平均成绩),创建一个触发器 Grade_modify,当 SC 表中的某学生的成绩发生变化时,则 Course 表中的平均成绩也能及时相应的发生改变。文案标准文案标准(4)测试上述三个触发器。测试过程在(1)、(2)、(3)中均给出。2.创建 insteadof触发器(1)创建一视图 Student_view,包含学号、姓名、课程号、课程名、成绩等属性,在 Student_view 上创
3、建一个触发器 Grade_moidfy,当对 Student_view 中的学生的成绩进行修改时,实际修改的是 sc 中的相应记录。文案标准文案标准(2)在 SC 表中插入一个 getcredit 字段(记录某学生,所选课程所获学分的情况),创建一个触发器ins_credit,当更改(注:含插入时)SC 表中的学生成绩时,如果新成绩大于等于 60 分,则该生可获得这门课的学分,如果新成绩小于60 分,则该生未能获得学分。文案标准文案标准(3)测试上述两个触发器。测试结果在(1)、(2)中均已给出。3.使用 T-SQL 语句管理和维护(1)用系统存储过程 sp_helptrigger 查看触发器
4、 Grade_modify 的相关信息。文案标准(2)使用系统存储过程 sp_helptext 查看触发器 Grade_modify 中的定义内容。(3)使用 select 语句查看触发器 Grade_modify 的定义内容。(4)用系统存储过程 sp_depends 查看触发器 Grade_modify 的相关性。文案标准(5)将 sc_insert 触发器改为 insteadof触发器,实现的功能不变。(6)将触发器 sc_insert 删除。文案标准4.使用 SQLServerManagementStudio 管理存储过程(1)在 SQL ServerManagementStudio 中重新创建刚删除的触发器sc_insert(2)查看触发器 sc_insert的内容。文案标准(3)删除触发器 sc_insert文案