实验八触发器的使用

上传人:工**** 文档编号:507883446 上传时间:2024-01-06 格式:DOC 页数:2 大小:39.50KB
返回 下载 相关 举报
实验八触发器的使用_第1页
第1页 / 共2页
实验八触发器的使用_第2页
第2页 / 共2页
亲,该文档总共2页,全部预览完了,如果喜欢就下载吧!
资源描述

《实验八触发器的使用》由会员分享,可在线阅读,更多相关《实验八触发器的使用(2页珍藏版)》请在金锄头文库上搜索。

1、实验八触发器的使用一、实验目的掌握触发器的创建、修改和删除操作。 掌握触发器的触发执行。掌握触发器与约束的不同。二、实验要求1. 创建触发器。2. 触发器执行触发器。3. 验证约束与触发器的不同作用期。4. 删除新创建的触发器。三、实验内容(一)示例1. 创建触发器 启动SQL Server查询编辑器,选择要操作数据库,如“sc (学生选课)”数据库。 在查询命令窗口中输入以下CREATE TRIGGE语句,创建触发器。为sc(学生选课)表创建一个基于 UPDATED作和DELETE操作的复合型触发器, 当修改了该表中的成绩信息或者删除了成绩记录时,触发器被激活生效,显示相 关的操作信息。2.

2、 触发触发器在查询命令窗口中输入以下UPDATE sc语句,修改成绩列,激发触发器。UPDATE scSET grade=grade+5WHERE课程号=3UPDATE sc语句修改非成绩列,激发触发器。DELETE sc 语句,删除成绩记录,激发触发器。在查询命令窗口中输入以下UPDATE scSET cno= 9WHERE课程号=1 在查询命令窗口中输入以下DELETE scWHERE cno= 73. 比较约束与触发器的不同作用期在查询命令窗口中输入并执行以下ALTER TABLE语句,为sc表添加一个约束,得成绩只能大于等于 0 且小于等于 100。ALTER TABLE scADD

3、CONSTRAINT Cl成绩CHECK(grade=0 ANDgrade=100)在查询命令窗口中输入并执行以下UPDATE sc语句,查看执行结果。UPDATE scSET grade=120WHERE cno= 3在查询命令窗口中输入执行以下UPDATE sc语句,查看执行结果。UPDATE scSET grade=90WHERE cno= 34. 删除新创建的触发器在查询命令窗口中输入DROP TRIGGER语句,删除新创建的触发器。DROP TRIGGER tri_UPDATE_DELETE_sc(二)练习1. 在 Student 表中编写 insert 的触发器, 假如每个班的学生

4、不能超过 30 个,如果低于此数,添加可以完成;如果超过此数,则插入将不能实现。2. 在SC表上编写update触发器,当修改 SC表中的grade字段时将其修改前后的信息 保存在 SC_log 表中。3. 为SC表建立一个名为insert_g_tr 的INSERT触发器,当用户向SC表中插入记录时, 如果插入的是在 course 表中没有的课程编号,则提示用户不能插入记录,否则提示 记录插入成功。在进行插入测试时,分别输入以下数据:学号课程编号分数00040003760005000769观察插入数据时的运行情况,说明为什么?4. 为course表创建一个名为del_c_tr的DELETE触发器,该触发器的作用是禁止删除 curriculum 表中的记录。5. 为student表创建一个名为 update_s_tr的UPDATE触发器,该触发器的作用是禁 止更新 student_info 表中的“姓名”字段的内容。6. 为 student 表建立删除触发器 del_s_tr ,要求当 student_info 表的记录被删除后, grade 表中相应的记录也能自动删除。四、实验报告要求1、写出与上述任务相对应的 SQL 语句2、并记录在实验过程中遇到的问题、解决办法及心得体会。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号