触发器工作原理
触发器原理

触发器原理
触发器是一种用来存储和控制电位状态的逻辑电路元件。
它可以接收输入信号,并根据触发器的特性产生相应的输
出信号。
触发器的原理基于锁存器和门电路的组合,其中
包括晶体管、集成电路等。
触发器的工作原理主要包括以下几个方面:
1. 反馈环路:触发器中的反馈环路是触发器的核心部分。
通过反馈环路,触发器可以实现存储和控制逻辑电平的功能。
当输入信号满足一定条件时,反馈环路会改变触发器
的状态,并产生输出信号。
2. 门电路:触发器内部通常包含与门、或门、非门等逻辑
门电路。
这些门电路可以根据输入信号的不同组合对触发
器进行控制,从而实现特定的逻辑功能。
3. 时钟信号:大多数触发器都需要一个时钟信号来同步其
状态变化。
触发器根据时钟信号的上升或下降沿改变状态,并在时钟信号边沿到来时产生输出信号。
4. 控制信号:触发器可以通过控制信号来改变其操作模式或功能。
通过控制信号,可以控制触发器的使能、复位、设置、清除等操作,从而满足不同的应用需求。
总之,触发器是一种基于逻辑门电路和反馈环路的存储和控制元件,通过输入信号、时钟信号和控制信号的组合来实现不同的功能。
它广泛应用于数字电路、计算机内存、计数器、寄存器等电子设备中。
jk触发器的工作原理及工作过程

jk触发器的工作原理及工作过程
JK触发器是数字电路中的一种基本触发器,由两个交叉耦合
的门电路组成。
它们的工作原理和工作过程如下:
工作原理:
1. J (Set) 输入信号:当J输入为高电平时,会将Q输出置为高
电平。
2. K (Reset) 输入信号:当K输入为高电平时,会将Q输出置
为低电平。
3. Q 输出信号:JK触发器的输出Q与输入J、K信号以及时
钟信号有关。
4. 时钟信号:时钟信号用于控制JK触发器的工作。
在上升沿
或下降沿(取决于电路的设计)时,JK触发器根据输入信号
的状态更新输出。
工作过程:
1. 初始状态:JK触发器的初始状态由上电时输入信号的状态
确定。
当J=K=0时,Q为先前状态的保持,即保持原来的值。
2. J=1,K=0:当J为高电平而K为低电平时,触发器会被置
入Set状态,即Q被置为高电平。
3. J=0,K=1:当J为低电平而K为高电平时,触发器会被置
入Reset状态,即Q被置为低电平。
4. J=1,K=1:当J和K均为高电平时,触发器处于反转状态。
当时钟信号的边沿到来时,Q的状态将发生改变,即Q的原
始值被翻转。
5. J=0,K=0:当J和K均为低电平时,触发器继续保持前一
个状态,即Q的值不变。
6. 更新输出:无论何时发生状态的改变,输出Q都会立即更新为新的状态。
总结起来,JK触发器根据输入信号和时钟信号的组合,可以实现保持状态、置高状态、置低状态和翻转状态四种操作。
它是许多复杂数字系统以及时序逻辑电路的重要组成部分。
触发器工作原理

触发器工作原理触发器是数字电路中一个重要的元件,它能够存储和输出一个稳定的信号状态,通常用于时序控制和存储数据。
在数字系统中,触发器的工作原理至关重要。
引言触发器是一种在数字电路中广泛使用的元件,它能够在不同的时刻存储输入的数据,并在需要时输出。
触发器的工作原理基于存储器件的功能,通过内部的触发器单元实现数据的稳定存储和输出。
基本原理触发器通常由多个门电路组成,最常见的是D触发器和JK触发器。
这些触发器内部包含了锁存器元件,通过时钟信号来控制数据的输入和输出。
当时钟信号到来时,触发器会根据内部的逻辑电路将输入数据稳定地存储,并在下一个时钟脉冲到来时输出。
这种存储和输出的过程被称为触发器的工作原理。
D触发器工作原理D触发器是最简单的一种触发器,它有一个数据输入端D、时钟信号端CLK和输出端Q。
当时钟信号到来时,D触发器会将输入端D的数据稳定地存储,并在下一个时钟脉冲到来时输出到输出端Q。
这种工作原理保证了数据在时钟信号的控制下进行稳定的存储和输出。
JK触发器工作原理JK触发器是一种更为复杂的触发器,它有两个数据输入端J和K、时钟信号端CLK和输出端Q。
JK触发器的工作原理是在时钟信号到来时,根据J和K输入端的逻辑状态和触发器的当前状态确定下一个状态,并在下一个时钟脉冲到来时输出到输出端Q。
JK触发器通过内部的逻辑电路实现了更加复杂的数据存储和输出功能。
应用领域触发器在数字系统中广泛应用,例如时序控制、数据存储、状态机实现等方面均有重要作用。
由于触发器能够稳定地存储和输出数据,在数字系统设计中扮演着重要的角色。
结论触发器是数字系统中的重要元件,其工作原理基于存储器件和逻辑门电路的组合实现了数据的稳定存储和输出功能。
不同类型的触发器有着不同的工作原理,但都能够在时钟信号的控制下实现数据的稳定存储和输出。
触发器的应用领域广泛,在数字系统设计中有着不可替代的作用。
RS触发器工作原理

减小功耗的方法
降低工作电压
降低触发器的工作电压可以减小功耗,但需要注意不能影响其正 常工作。
动态功耗管理
根据触发器的实际需求,动态调整其工作模式和功耗,以达到节能 的目的。
采用低功耗技术
采用低功耗的逻辑门和电路技术,可以进一步减小触发器的功耗。
06
RS触发器的发展趋势和未来 展望
新型RS触发器的研究和开发
状态图
状态图以图形方式表示触发器的状态转换过程,包括稳定状 态和过渡状态。状态图有助于直观理解触发器的工作过程。
动作特性
动作特性
当输入信号满足置位或复位条件时, 触发器会从当前状态转换到目标状态, 完成一个工作周期。
延迟时间
在输入信号变化后,触发器完成状态 转换所需的时间称为延迟时间。延迟 时间取决于电路的传输延迟和逻辑门 延迟。
特点
RS触发器具有两个稳定状态,即Q和 Q'端状态相反,以及输入信号能够通 过非门实现状态转换。
RS触发器的重要性
01
02
03
基础性
RS触发器作为数字逻辑门 电路的基础,是构成各种 复杂数字电路和系统的基 本单元。
稳定性
RS触发器具有稳定的两个 状态,能够保证数字电路 的可靠工作。
转换功能
RS触发器的状态转换功能 是实现数字逻辑运算的基 础。
控制逻辑
在微处理器的控制逻辑中,RS触发器用于实现控 制信号的逻辑运算和状态转换。
05
RS触发器的改进和优化
降低传输延迟的方法
采用高速材料
使用具有高电子迁移率和高饱和速度的材料,如硅化物或氮化物, 可以降低传输延迟。
优化电路设计
通过改进电路布局和布线,减小信号传输路径和延迟,提高触发器 的响应速度。
触发器的工作原理

触发器的工作原理
触发器是数字电路中的一种重要元件,它可以在特定的输入条件下产生稳定的
输出信号。
触发器的工作原理主要涉及到时钟信号、触发条件和输出状态等方面,下面将详细介绍触发器的工作原理。
首先,触发器的工作原理与时钟信号密切相关。
在数字电路中,时钟信号是非
常重要的,它可以控制数字电路中各个元件的工作节奏,保证整个系统的同步运行。
触发器也需要时钟信号来控制其工作状态,只有在时钟信号到来时,触发器才能对输入信号进行处理,并产生相应的输出信号。
其次,触发器的工作原理还与触发条件密切相关。
触发器有两种基本类型,分
别是边沿触发器和电平触发器。
边沿触发器是在时钟信号的上升沿或下降沿触发的,而电平触发器则是在时钟信号的高电平或低电平状态下触发的。
不同类型的触发器对输入信号的触发条件有所不同,但它们都能够根据触发条件产生稳定的输出信号。
最后,触发器的工作原理还涉及到输出状态的稳定性。
触发器的输出状态可以
分为两种,分别是稳定状态和非稳定状态。
在触发条件满足时,触发器会产生稳定的输出状态,并保持一段时间,直到下一次时钟信号到来。
这种稳定性保证了数字电路的正常运行,能够有效地处理输入信号并产生相应的输出信号。
总的来说,触发器的工作原理涉及到时钟信号、触发条件和输出状态等方面。
通过对这些方面的理解,可以更好地掌握触发器的工作原理,进而在数字电路的设计和应用中发挥重要作用。
触发器作为数字电路中的重要元件,其工作原理的深入理解对于提高数字电路的性能和稳定性具有重要意义。
D触发器工作原理

D触发器工作原理引言概述:D触发器是数字电路中常用的一种触发器,其工作原理对于理解数字电路的基本原理和逻辑设计非常重要。
本文将详细介绍D触发器的工作原理,包括引言概述、正文内容和总结三个部分。
正文内容:1. D触发器的基本概念1.1 D触发器的定义D触发器是一种数字电路元件,可以存储和传输数字信号。
它由两个输入端(D和时钟信号)和两个输出端(输出和反相输出)组成。
1.2 D触发器的工作方式D触发器根据时钟信号的变化来决定是否传输输入信号。
当时钟信号为高电平时,D触发器会将输入信号传输到输出端;当时钟信号为低电平时,D触发器会保持之前的状态。
2. D触发器的内部结构2.1 SR触发器D触发器可以由SR触发器演化而来。
SR触发器具有两个输入端(S和R),其中S表示置位(Set)输入,R表示复位(Reset)输入。
通过适当的控制S和R 的输入,可以实现D触发器的功能。
2.2 时钟信号的作用时钟信号是D触发器中非常重要的一个输入信号。
它决定了何时传输输入信号。
当时钟信号从低电平变为高电平时,D触发器会根据D输入的状态传输到输出端。
3. D触发器的应用3.1 数据存储D触发器可以用于存储数字信号,常见的应用场景包括寄存器和存储器。
3.2 时序电路D触发器可以用于时序电路的设计,如计数器和频率分频器。
3.3 逻辑电路D触发器可以用于逻辑电路的设计,如触发器的级联和逻辑门电路的实现。
4. D触发器的特点4.1 时序稳定D触发器具有时序稳定的特点,即在时钟信号的作用下,输入信号的变化只会在时钟信号的上升沿或下降沿发生。
4.2 可靠性高D触发器采用了电子元件实现,具有较高的可靠性和稳定性。
4.3 高速传输D触发器的传输速度较快,可以满足大多数数字电路的需求。
总结:通过本文的介绍,我们了解到D触发器的工作原理。
D触发器通过时钟信号的变化来决定是否传输输入信号,可以用于数据存储、时序电路和逻辑电路的设计。
D触发器具有时序稳定、可靠性高和高速传输等特点,对于数字电路的设计和逻辑分析具有重要意义。
触发器的工作原理
触发器的工作原理
触发器是一种设备或程序,用于监测特定条件或事件的发生,并在满足条件或发生指定事件时触发相应的操作或程序执行。
触发器的工作原理可以简要概括如下:
1. 监测条件:触发器会不断地监测特定的条件,例如特定的数据状态、时间间隔或外部事件的触发。
2. 条件验证:当触发器检测到条件满足时,将触发进一步的操作。
这通常涉及对条件进行验证,以确保满足特定的要求。
3. 触发操作:一旦条件被验证为正确,触发器将启动所定义的操作或程序。
这些操作可以是预先定义的命令、脚本、函数、存储过程等,用于响应触发事件。
4. 执行逻辑:触发操作可根据需要执行相应的逻辑。
例如,在数据库中,触发器可以用于在插入、更新或删除数据时自动执行其他操作,如更新其他表或触发其他触发器。
5. 可选反馈:在触发操作完成后,触发器可以选择向用户提供反馈,例如显示一条消息、记录事件日志或触发其他通知机制。
需要注意的是,触发器的工作原理可能略有差异,具体取决于所使用的平台、编程语言或软件系统。
不同的触发器可能具有不同的配置选项和功能,但它们的基本原理通常保持一致。
触发器工作原理
触发器工作原理触发器是数字电路中一种重要的元件,它能够存储和传输数字信号,并且在特定条件下改变输出状态。
触发器在数字系统中扮演着非常重要的角色,它们被广泛应用于计数器、寄存器、时序逻辑电路等电路中。
那么,触发器是如何工作的呢?本文将深入探讨触发器的工作原理。
首先,我们来了解一下触发器的基本结构。
触发器由若干个门电路组成,最常见的是由多个逻辑门构成的触发器。
在这些逻辑门的作用下,触发器能够实现存储和传输数字信号的功能。
同时,触发器还具有时序控制的特性,能够根据外部时钟信号来改变输出状态。
触发器有两种基本类型,边沿触发器和电平触发器。
边沿触发器是在时钟信号的上升沿或下降沿改变状态,而电平触发器则是在时钟信号为高电平或低电平时改变状态。
这两种类型的触发器在数字系统中有着不同的应用场景,能够满足不同的设计需求。
触发器的工作原理主要包括两个方面,存储和传输。
在存储方面,触发器能够在时钟信号的作用下,将输入信号的数值存储起来,并在下一个时钟周期中传输到输出端。
这样就实现了数字信号的存储和延迟功能。
在传输方面,触发器能够根据时钟信号的控制,将存储的数字信号传输到输出端,从而完成数据的传输功能。
触发器的工作原理还涉及到触发器的触发条件。
触发条件是指触发器在何种条件下改变输出状态。
对于边沿触发器来说,触发条件通常是在时钟信号的上升沿或下降沿改变状态;而对于电平触发器来说,触发条件则是在时钟信号为高电平或低电平改变状态。
触发条件的设定,能够有效控制触发器的工作状态,保证数字系统的稳定性和可靠性。
总结一下,触发器是数字电路中的重要元件,它能够存储和传输数字信号,并且在特定条件下改变输出状态。
触发器的工作原理主要包括存储和传输两个方面,同时还涉及到触发条件的设定。
通过对触发器工作原理的深入理解,我们能够更好地应用触发器于数字系统的设计中,实现更加稳定和可靠的数字电路。
电路中的触发器掌握触发器的工作原理和应用场景
电路中的触发器掌握触发器的工作原理和应用场景电路中的触发器是一种重要的数字电子元件,具有广泛的应用场景。
触发器可以将输入信号转换为稳定的输出信号,其工作原理基于存储和改变信息的能力。
本文将详细介绍触发器的工作原理以及一些常见的应用场景。
一、触发器的工作原理触发器是由逻辑门构成的,广泛应用于数字电路中。
触发器可以存储一位二进制信息,并且能够在特定的时刻改变输出信号。
触发器的基本组成是几个逻辑门,常见的有SR触发器、D触发器、JK触发器和T触发器等。
不同类型的触发器有不同的工作原理,下面以D触发器为例进行说明。
D触发器是最常见的触发器之一,其内部包含两个逻辑门组成。
D触发器的输入端包括数据输入端(D)和时钟输入端(CLK),输出端则为Q和Q'。
D触发器可以存储输入信号D的值,并在时钟信号到达时将D的值传递给输出端。
换句话说,D触发器在每个时钟周期的上升沿根据D输入更新输出值。
二、触发器的应用场景触发器广泛应用于数字电路中,下面列举几个触发器的应用场景。
1. 计数器触发器在计数器中起到重要的作用。
计数器可以根据触发器的状态转换来进行计数操作。
比如,一个4位二进制计数器可以由4个D触发器组成。
每个触发器的输出与下一个触发器的时钟输入连接在一起,形成一个循环链。
当时钟信号到达时,触发器的状态将根据时钟信号的上升沿进行更新,实现数字信号的计数功能。
2. 存储器触发器在存储器中用于保存和读取信息。
SR触发器和D触发器在存储器中起到关键的作用。
SR触发器可以用于存储一位二进制信息,比如用作SRAM中的存储单元。
D触发器则可以存储更多的二进制信息,常用于寄存器和存储器的设计中。
3. 状态机触发器在状态机中用于存储和改变系统的状态。
状态机是一个广泛应用于控制系统和通信系统中的概念。
触发器可以用来存储状态信息,并根据输入信号的变化改变状态。
比如,JK触发器可以用于实现有限状态机的状态转换。
总结:触发器是电路中重要的数字电子元件,具有存储和改变信息的能力。
三种触发器的工作原理
三种触发器的工作原理触发器是一种数字电路元件,用于存储和控制电平信号,常用于时序电路和数字电路中。
触发器有多种类型,常见的有RS触发器(或称为SR触发器)、JK触发器和D触发器。
这三种触发器的工作原理如下:1.RS触发器(或SR触发器):RS触发器是最简单的一种触发器,其主要由两个交叉反馈的与门组成。
RS触发器有两个输入端(S和R)和两个输出端(Q和Q')。
当S=0、R=1时,Q=1、Q'=0;当S=1、R=0时,Q=0、Q'=1;当S=0、R=0时,Q和Q'保持原有状态;当S=1、R=1时,触发器进入禁忌状态。
RS触发器的工作原理主要是通过输入信号的不同组合来改变输出信号的状态,从而实现存储和控制功能。
2.JK触发器:JK触发器是一种扩展的RS触发器,通过连接两个RS触发器构成,其中一个是J输入,另一个是K输入。
JK触发器与RS触发器的不同之处在于,当J=K=0时,保持原有状态;当J=1、K=0时,Q=1、Q'=0;当J=0、K=1时,Q=0、Q'=1;当J=K=1时,触发器反转状态。
JK触发器的工作原理主要是通过输入信号的不同组合来改变输出信号的状态,并且在J=K=1时实现触发器的反转操作。
3.D触发器:D触发器是最常用的一种触发器,它有一个输入端D和两个输出端(Q和Q')。
D触发器可以看作是JK触发器的简化版本,当D=0时,Q=0、Q'=1;当D=1时,Q=1、Q'=0。
D触发器的工作原理主要是通过输入信号D的状态来改变输出信号的状态,从而实现存储和控制功能。
与RS触发器不同的是,D触发器没有禁忌状态,因此在设计和使用时更加方便和容易。
总结起来,这三种触发器(RS触发器、JK触发器和D触发器)都是通过输入信号的不同组合来改变输出信号的状态。
它们在应用中可以实现不同的存储和控制功能,如时序电路的状态存储、计数器、寄存器等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
在SQL Server 2005里,可以用两种方法来保证数据的有效性和完整性:约束(check)和触发器(Trigger)。
约束是直接设置于数据表内,只能现实一些比较简单的功能操作,如:实现字段有效性和唯一性的检查、自动填入默认值、确保字段数据不重复(即主键)、确保数据表对应的完整性(即外键)等功能。
触发器是针对数据表(库)的特殊的存储过程,当这个表发生了 Insert、Update 或Delete操作时,会自动激活执行的,可以处理各种复杂的操作。
在SQL Server 2005中,触发器有了更进一步的功能,在数据表(库)发生Create、Alter和Drop 操作时,也会自动激活执行。
触发器常用的一些功能如下:*完成比约束更复杂的数据约束:触发器可以实现比约束更为复杂的数据约束* 检查所做的SQL是否允许:触发器可以检查SQL所做的操作是否被允许。
例如:在产品库存表里,如果要删除一条产品记录,在删除记录时,触发器可以检查该产品库存数量是否为零,如果不为零则取消该删除操作。
* 修改其它数据表里的数据:当一个SQL语句对数据表进行操作的时候,触发器可以根据该SQL语句的操作情况来对另一个数据表进行操作。
例如:一个订单取消的时候,那么触发器可以自动修改产品库存表,在订购量的字段上减去被取消订单的订购数量。
* 调用更多的存储过程:约束的本身是不能调用存储过程的,但是触发器本身就是一种存储过程,而存储过程是可以嵌套使用的,所以触发器也可以调用一个或多过存储过程。
* 发送SQL Mail:在SQL语句执行完之后,触发器可以判断更改过的记录是否达到一定条件,如果达到这个条件的话,触发器可以自动调用SQL Mail来发送邮件。
例如:当一个订单交费之后,可以物流人员发送Email,通知他尽快发货。
* 返回自定义的错误信息:约束是不能返回信息的,而触发器可以。
例如插入一条重复记录时,可以返回一个具体的友好的错误信息给前台应用程序。
* 更改原本要操作的SQL语句:触发器可以修改原本要操作的SQL语句,例如原本的SQL语句是要删除数据表里的记录,但该数据表里的记录是最要记录,不允许删除的,那么触发器可以不执行该语句。
* 防止数据表构结更改或数据表被删除:为了保护已经建好的数据表,触发器可以在接收到Drop和Alter开头的SQL语句里,不进行对数据表的操作。
11.1.2 触发器的种类在SQL Server 2005中,触发器可以分为两大类:DML触发器和DDL触发器* DML触发器:DML触发器是当数据库服务器中发生数据操作语言(Data Manipulation Language)事件时执行的存储过程。
DML触发器又分为两类:After 触发器和Instead Of触发器* DDL触发器:DDL触发器是在响应数据定义语言(Data Definition Language)事件时执行的存储过程。
DDL触发器一般用于执行数据库中管理任务。
如审核和规范数据库操作、防止数据库表结构被修改等。
只在表或视图上INSERT, UPDATE, or DELETE时触发的触发器 (DML触发器) CREATE TRIGGER [ schema_name . ]trigger_nameON { table | view }[ WITH <dml_trigger_option> [ ,...n ] ]{ FOR | AFTER | INSTEAD OF }{ [ INSERT ] [ , ] [ UPDATE ] [ , ] [ DELETE ] }[ WITH APPEND ][ NOT FOR REPLICATION ]AS { sql_statement [ ; ] [ ...n ] | EXTERNAL NAME <method specifier [ ; ] > }<dml_trigger_option> ::=[ ENCRYPTION ][ EXECUTE AS Clause ]<method_specifier> ::=assembly_name.class_name.method_name------------------------------------------------------------------- Trigger on a CREATE, ALTER, DROP, GRANT, DENY, REVOKE, or UPDATE STATISTICS statement (DDL触发器)CREATE TRIGGER trigger_nameON { ALL SERVER | DATABASE }[ WITH <ddl_trigger_option> [ ,...n ] ]{ FOR | AFTER } { event_type | event_group } [ ,...n ]AS { sql_statement [ ; ] [ ...n ] | EXTERNAL NAME < method specifier > [ ; ] }<ddl_trigger_option> ::=[ ENCRYPTION ][ EXECUTE AS Clause ]<method_specifier> ::=assembly_name.class_name.method_name11.2 DML触发器的分类SQL Server 2005的DML触发器分为两类:* After触发器(事后触发器):这类触发器是在记录已经改变完之后(after),才会被激活执行,它主要是用于记录变更后的处理或检查,一旦发现错误,也可以用Rollback Transaction语句来回滚本次的操作。
* Instead Of触发器(事前触发器):这类触发器一般是用来取代原本的操作,在记录变更之前发生的,它并不去执行原来SQL语句里的操作(Insert、Update、Delete),而去执行触发器本身所定义的操作。
11.3 DML触发器的工作原理在SQL Server 2005里,为每个DML触发器都定义了两个特殊的表,一个是插入表,一个是删除表。
这两个表是建在数据库服务器的内存中的,是由系统管理的逻辑表,而不是真正存储在数据库中的物理表。
对于这两个表,用户只有读取的权限,没有修改的权限。
这两个表的结构与触发器所在数据表的结构是完全一致的,当触发器的工作完成之后,这两个表也将会从内存中删除。
插入表里存放的是更新前的记录:对于插入记录操作来说,插入表里存放的是要插入的数据;对于更新记录操作来说,插入表里存放的是要更新的记录。
删除表里存放的是更新后的记录:对于更新记录操作来说,删除表里存放的是更新前的记录(更新完后即被删除);对于删除记录操作来说,删除表里存入的是被删除的旧记录。
After触发器的工作原理After触发器是在记录更变完之后才被激活执行的. 数据库操作步骤:(1)接收SQL语句,将要从产品库存表里删除的产品记录取出来,放在删除表里。
(2)从产品库存表里删除该产品记录。
(3)从删除表里读出该产品的库存数量字段,判断是不是为零,如果为零的话,完成操作,从内存里清除删除表;如果不为零的话,用Rollback Transaction 语句来回滚操作。
11.3.2 Instead Of触发器的工作原理Instead Of触发器与After触发器不同。
Instead Of触发器,是在这些操作进行之前就激活了,并且不再去执行原来的SQL操作,而去运行触发器本身的SQL 语句。
设计Instead Of触发器Instead Of触发器看起来就简单多了,在SQL Server服务器接到执行SQL语句请求后,先建立临时的Inserted表和Deleted表,然后就触发了Instead Of触发器,至于那个SQL语句是插入数据、更新数据还是删除数据,就一概不管了,把执行权全权交给了Instead Of触发器,由它去完成之后的操作。
Instead Of触发器的使用范围Instead Of触发器可以同时在数据表和视图中使用,通常在以下几种情况下,建议使用Instead Of触发器:* 数据库里的数据禁止修改:例如电信部门的通话记录是不能修改的,一旦修改,则通话费用的计数将不正确。
在这个时候,就可以用Instead Of触发器来跳过Update修改记录的SQL语句。
* 有可能要回滚修改的SQL语句:如11.5.3节中的例二,用After触发器并不是一个最好的方法,如果用Instead Of触发器,在判断折扣大于0.6时,就中止了更新操作,避免在修改数据之后再回滚操作,减少服务器负担。
* 在视图中使用触发器:因为After触发器不能在视图中使用,如果想在视图中使用触发器,就只能用Instead Of触发器。
* 用自己的方式去修改数据:如不满意SQL直接的修改数据的方式,可用Instead Of触发器来控制数据的修改方式和流程。
设计简单的Instead Of触发器Instead Of触发器的语法如下:CREATE TRIGGER 触发器名ON 数据表名或视图名Instead Of INSERT或DELETE或UPDATEASBEGINSET NOCOUNT ON --屏蔽在触发器里Insert语句执行完之后返回的所影响行数的消息--这里是要运行的SQL语句ENDGO从上面可以看得出,Instead Of触发器与After触发器的语法几乎一致,只是简单地把After改为Instead Of。
前面说过的11.5.3节中的例二,用After触发器并不是一个最好的方法,如果用Instead Of触发器,在判断折扣大于0.6时,就中止了更新操作,避免在修改数据之后再回滚操作,减少服务器负担。
其他注意事项* After触发器只能用于数据表中,Instead Of触发器可以用于数据表和视图上,但两种触发器都不可以建立在临时表上。
* 一个数据表可以有多个触发器,但是一个触发器只能对应一个表。
* 在同一个数据表中,对每个操作(如Insert、Update、Delete)而言可以建立许多个After触发器,但Instead Of触发器针对每个操作只有建立一个。
* 如果针对某个操作即设置了After触发器又设置了Instead Of触发器,那么Instead of触发器一定会激活,而After触发器就不一定会激活了。
* Truncate Table语句虽然类似于Delete语句可以删除记录,但是它不能激活Delete类型的触发器。
因为Truncate Table语句是不记入日志的。