下载此文档

数据库触发器.ppt


文档分类:IT计算机 | 页数:约28页 举报非法文档有奖
1/28
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/28 下载此文档
文档列表 文档介绍
触发器
触发器
触发器概述
问题的引入
触发器的概念
触发器的原理
触发器的分类
触发器的创建、修改及删除
应用示例
触发器概述
问题的引入
增加一个记录
删除一个记录(“95003”,”002”,56)
95001 006 90
4
1
在[学生管理数据库]中,某学生的[选课门数]是一个经常访问的属性,因此在student表中增加一个属性sselnum (smallint).
在实际应用
实例展示
触发器概述
考虑该问题涉及两个表之间的关系,可否用参照完整性来实现?
可否用嵌套的SQL语句来实现?
问题的解决:使用触发器trigger
update student set sselnum=(select count(*) from s_c where =)
存在的问题
触发器的主要作用就是其能够实现由主键和外键所不能保证的复杂的参照完整性和数据的一致性
触发器概述
触发器的概念
触发器是一种特殊类型的存储过程。在SQL Server里面也就是对某一个表的一定的操作,触发某种条件,从而执行的一段程序。
触发器触发原因对表进行插入、更新或删除操作触发事件。
触发结果:另一段程序的执行。
思考:在上例中,触发原因是什么?触发结果是什么?
触发器概述
触发器和存储过程的区别:
INSERT INTO s_c VALUES(‘95001’,‘006’,90)
EXEC Getgrade ‘95001'
触发器可以用于 SQL Server 约束、默认值和规则的完整性检查。
触发器主要是通过事件触发而执行的,而存储过程是通过调用存储过程名称而执行的。
触发器概述
特殊性在于:
l它与表紧密相连,不可以脱离表单独存在。
l不允许使用参数,没有返回值。
l不允许用户调用,当对表进行插入、删除、修改操作时由系统自动调用并执行(相当于事件方法)。
触发器概述
触发器可以实现比较复杂的完整性约束:
l  扩展约束、默认值和规则对象的完整性检查。
l 自动生成数据。
l 检查数据的修改,防止对数据不正确的修改,保证数据表之间数据的正确性和一致性。
l 自定义复杂的安全权限。
触发器作为一种数据库对象,ment系统表中存储其完整的定义信息,在sysobject系统表中有该对象的记录。
触发器概述
1)触发器自动执行
在对表的数据作了任何修改(比如手工输入或者应用程序采取的操作)之后立即被激活。
3)触发器可以实现比CHECK约束更为复杂的数据完整性约束
在数据库中为了实现数据完整性约束,可以使用CHECK约束或触发器。CHECK约束不允许引用其它表中的列来完成检查工作,而触发器可以引用其它表中的列。
2)触发器能够对数据库中的相关表实现级联更改
触发器是基于一个表创建的,但是可以针对多个表进行操作,实现数据库中相关表的级联更改。
触发器概述
AFTER类型触发器:
只有执行某一操作(INSERT UPDATE DELETE) 之后,触发器才被触发。
只能在表上定义。
触发器的分类
INSTEAD OF 触发器:
并不执行其所定义的操作(INSERT、 UPDATE、 DELETE),而仅是执行触发器本身。
既可在表上定义INSTEAD OF 触发器,也可以在视图上定义INSTEAD OF 触发器。

数据库触发器 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数28
  • 收藏数0 收藏
  • 顶次数0
  • 上传人在水一方
  • 文件大小204 KB
  • 时间2018-11-03