触发器的创建与使用

触发器的创建与使用

ID:39677498

大小:353.00 KB

页数:42页

时间:2019-07-09

触发器的创建与使用_第1页
触发器的创建与使用_第2页
触发器的创建与使用_第3页
触发器的创建与使用_第4页
触发器的创建与使用_第5页
资源描述:

《触发器的创建与使用》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、《数据库基础与应用》第10章触发器的创建和使用相关知识回顾1、什么是存储过程?2、创建存储过程的基本语法如何?3、如何调用存储过程?4、数据库中有哪6种约束?7/21/2021触发器与存储过程、约束的关系触发器是建立在表上的特殊的存储过程。当对表进行插入、删除、更新操作时,触发器将会自动执行。利用触发器可以保证表中数据的一致性和完整性,功能比约束更强。7/21/2021本章学习目标了解触发器的概念和优点理解触发器的工作原理熟练掌握如何创建INSERT触发器、UPDATE触发器、DELETE触发器掌握如何查看、修改和删除触发器7/21/2021第10章触发器的创建和使

2、用10.1概述10.2创建触发器10.3查看、修改和删除触发器10.4综合实例10.5上机实训本章小结7/21/202110.1概述触发器是一种特殊类型的存储过程,它是与特定的表相关联的。当使用UPDATE、INSERT或DELETE中的一种或多种操作在指定表中对数据进行修改时,触发器会生效并自动执行。一个表可以有多个触发器。7/21/2021触发器的主要功能:使用触发器有助于强制保持数据库的数据完整性。例如,在触发器中可以完成如下功能:不允许删除或更新特定的记录。不允许插入不符合逻辑关系的记录。在删除一条记录的同时删除其他表中与其相关的记录。在修改一条记录的同时修

3、改其他表中与其相关的记录。7/21/2021触发器的主要优点:触发器是自动执行的,不需要管理员手动维护数据库的数据完整性。触发器可以对数据库中的相关表进行级联更改。例如,可以在“院系”表中定义触发器,当用户删除表“院系”中的记录时,触发器将删除“学生”表和“教师”表中对应院系的记录。触发器可以限制向表中插入无效的数据,与CHECK约束的功能相似。但在CHECK约束中不能使用到其他表中的字段,而在触发器中则没有此限制。7/21/2021思考?触发器如何保证数据的完整性和一致性?触发器有哪些类型?如何创建触发器?触发器是怎么自动执行的?7/21/2021示例数据库Stu

4、dent的结构学生表S(Snum,Sname,Ssex,Sage,Sphone,Dnum)教师表T(Tnum,Tname,Tsex,Tbirth,Ttitle,Tsalary,Tphone,Dnum)院系表D(Dnum,Dname,Ddirector)课程表C(Cnum,Cname,Cfreq)选课表SC(Snum,Cnum,Score)授课表TC(Tnum,Cnum)学生统计表N(Dnum,Num,Man,Woman)课程平均成绩CPJ(Cnum,Cname,Pjcj)7/21/2021项目:学籍管理系统任务1:新生入学时,如何自动调整表n中相应系部的数据。任务2

5、:有学生退学时,如何自动调整表n中相应系部的数据。任务3:学生转系时,如何自动调整表n中相应班级的数据。任务4:学生选修某门课程取得成绩后,如何自动更新该课程的平均成绩;任务5:发现某学生登记的成绩有误,进行更正后,如何自动调整该课程的平均成绩;任务6:某个系不存在了,要删除D表中相应记录该如何进行?7/21/2021理解触发器的类型(1)对应数据操作的三种类型:INSERT、DELETE和UPDATE,分别有三种不同类型的触发器,在执行相应的操作时自动触发。一个表可以同时有多个触发器,这些触发器可以是不同类型,也可以是同一类型的。上述6个任务所需要的触发器分别属于

6、哪种?7/21/2021(2)从执行时间来看,SQLSERVER有两类触发器:AFTER触发器:触发器在触发它们的操作完成后执行。一张表中可以为每个触发操作(INSERT、DELETE和UPDATE)创建多个AFTER触发器。INSTEADOF触发器:该触发器代替触发操作执行,原来的操作不再执行。一个表只能创建一个INSTEADOF触发器。上述6个任务所需要的触发器分别属于哪种?7/21/20217/21/202110.2创建触发器创建触发器的方法:1.使用Transact-SQL语句创建触发器2.使用企业管理器创建触发器7/21/2021使用Transact-SQ

7、L语句创建触发器CREATETRIGGER<触发器名>ON<表名>{FOR

8、AFTER

9、INSTEADOF}{[DELETE][,][INSERT][,][UPDATE]}AS注意:默认创建的触发器是AFTER类型的。7/21/2021任务1创建insert触发器例1在表s上创建一个INSERT触发器,实现当表s插入一个学生时,自动调整表n中相应系部的统计数据,即实现表s插入数据时与表n间数据的一致性。方法一:用SQL语句实现方法二:用企业管理器实现7/21/2021方法一:用SQL语句创建触发器CREATETRIGGERs_insertONsF

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。