SQL Server(八)-触发器

本文详细介绍了SQL Server中的触发器,包括触发器的概念、作用、分类,如DML触发器、DDL触发器等。触发器主要用于确保数据完整性,执行复杂业务规则,防止无意义的数据操作,并在数据变动时进行级联操作。同时,文章讲解了触发器的工作原理,如INSERTED和DELETED表,并提供了创建、修改、删除和管理触发器的语法示例。
摘要由CSDN通过智能技术生成

1 认识触发器
触发器是由一系列的T-SQL编写完成的,和存储过程类似。也可以说它是一种特殊的存储过程。在数据库中,触发器有着和“约束条件”类似的功能,利用它可以解决常规“约束条件”解决不了的问题。
1.1 什么是触发器
触发器由Transact-SQL编写并存储在SQL Server服务器中,但触发器本身的调用和存储过程调用却是不一样的。存储过程由用户、应用程序、触发器或其他过程调用。触发器只能由数据库的特定事件来触发,所谓的特定事件主要包括如下几种类型的事件。
(1)用户在指定的表或视图做DML操作,主要包括如下几种:
● INSERT操作,在特定的表或视图中增加数据。
● UPDATE操作,对特定的表或视图修改数据。
● DELETE操作,删除特定表或视图的数据。
(2)用户做DDL操作,主要包括如下几种:
● CREATE操作,创建对象。
● ALTER操作,修改对象。
● DROP操作,删除对象。
(3)用户进行LOGON操作
● 与SQL Server实例建立连接。
当创建触发器的类型同指定的事件相匹配时,触发器将会被激发,其他情况下触发器不会被激发,这一点和存储过程不一样。
1.2 触发器的作用
触发器的运用虽然很耗费数据库系统的性能,但它所起的作用却比较特殊。在SQL Server中触发器可以实现数据的完整性,并保证复杂业务规则的强制执行。这主要表现在以下几个方面:
● 利用触发器可以执行相对复杂的业务操作。增加、删除、修改数据是对表最基本的操作方式。这种操作方式只能完成固定的数据变动,而使用触发器则在完成数据变动的基础上做额外的操作,以达到完成特殊业务的目的。
● 可以防止无意义的数据操作。利用触发器可以对符合某些条件的数据加以保护,使其不能被随意改动
● 用于级联操作数据。当一个表中的数据有变动时,可以利用触发器修改这些变动数据在其他表中的关联数据(正常情况下可以利用外键进行限制)。
保证数据的同步复制
● 利用触发器可以跟踪对数据库的操作。在指定的表或视图中设置触发器,当记录被改变时,利用触发器把数据变动日志记录下来。
允许或限制修改某些表,利用触发器可以限制表的变动。
1.3 触发器分类
在SQL Server 2008中可以使用的触发器可以分为4大类,分别是DML触发器、DDL触发器、CLR触发器登录触发器。其中最常用的是DML触发器。
(1)DML触发器。这种类型的触发器可以称为数据操纵语言(DML)触发器。它作用在表或

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值