- 1、本文档共36页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第14章 触 发 器
14.1 背 景 知 识
14.2 DML触发器
14.3 DDL触发器
触发器是一种特殊的存储过程,它在
特定语言事件发生时自动执行,通常用于
实现强制业务规则和数据完整性。
14.1 背 景 知 识
14.1.1 触发器的作用
触发器的主要作用是实现由主键和外
键所不能保证的复杂的参照完整性和数据
一致性。除此之外,触发器还有以下作用。
(1)触发器可以对数据库进行级联修改。
(2 )实现比CHECK约束更为复杂的限制。
(3 )比较数据修改前后的差别。
(4 )强制表的修改要合乎业务规则。
14.1.2 Inserted表和Deleted表
SQL Server 2005为每个DML触发器
都创建了两个专用临时表:Inserted表和
Deleted表。这两个表的结构总是与被该触
发器作用的表的结构相同,触发器执行完
成后,与该触发器相关的这两个表也会被
删除。
Inserted表存放由于执行INSERT或
UPDATE语句而要向表中插入的所有行。
Deleted表存放由于执行DELETE或
UPDATE语句而要从表中删除的所有行。
14.1.3 触发器的执行过程
DML触发器按照被激活的时机,可分
为AFTER触发器和INSTEAD OF两种触发
器。
14.2 DML触发器
DML触发器是当数据库服务器中发生
数据操作语言(DML )事件时要执行的操
作。DML事件包括对表或视图发出的
UPDATE、INSERT或DELETE语句。
14.2.1 创建DML触发器
创建DML触发器的语法格式为:
CREATE TRIGGER
[ schema_name . ]trigger_name
ON { table | view }
[ WITH ENCRYPTION ]
{ FOR | AFTER | INSTEAD OF }
{ [ INSERT ] [ , ] [ UPDATE ] [ , ] [ DELETE ] }
[ NOT FOR REPLICATION ]
AS { sql_statement [ ; ] }
其中各参数的含义如下。
(1)schema_name
DML触发器所属架构的名称。
(2)trigger_name
触发器的名称。
(3 )table|view
对其执行DML触发器的表或视图,有
时称为触发器表或触发器视图。
(4)WITH ENCRYPTION
对CREATE TRIGGER语句的文本进
行加密。
(5)AFTER
指定DML触发器仅在触发SQL语句中
指定的所有操作都已成功执行时才被激发。
(6)INSTEAD OF
指定DML触发器用于“替代”引起触
发器执行的T-SQL语句,因此其优先级高
于触发语句的操作。
(7){ [ INSERT ] [ , ] [ UPDATE ]
[ , ] [ DELETE ] }
指定激活触发器的数据修改语句。必
须至少指定一个选项。在触发器定义中允
许使用上述选项的任意顺序组合。
(8)NOT FOR REPLICATION
指示当复制代理修改涉及到触发器的
表时,不应执行触发器。
(9)sql_statement
指定触发器所执行的T-SQL语句。
14.2.2 查看和修改DML触发器
1 .查看触发器
2 .修改DML 触发器
14.2.3 使触发器无效或重新有效
1 .使DML 触发器无效
在有些情况下,用户希望暂停触发器
的作用,但并不删除它,这时就可以通过
DISABLE TRIGGER语句使触
您可能关注的文档
- MasterCAM_X4项目化教程 教学课件 耿晓明 课件及源文件 项目8.pdf
- Mastercam数控加工实用教程 教学课件 解金榜 第4章 3D实体设计.pdf
- Mastercam应用教程 第3版 教学课件 张延 课件 第6章.pdf
- MATLAB 7简明教程(教学课件、实例源文件) 教学课件 7 302 12190 7 08 图 形 处 理.pdf
- MATLAB Simulink电力系统建模与仿真 教学课件 于群 第7章 MATLAB在微机继电保护中的应用实例.pdf
- MATLABSIMULINK实用教程 教学课件 张化光 刘鑫蕊 孙秋野 第8章MATLAB应用程序.pdf
- MATLAB基础教程 教学课件 978 7 302 24618 3 ch01.pdf
- MATLAB建模与仿真应用教程 第2版 教学课件 赵魁 教学课件 第3章.pdf
- MATLAB建模与仿真应用教程 第2版 教学课件 赵魁 教学课件 第10章.pdf
- MATLAB实践教程 教学课件 王玉顺 第1 5章 第1章.pdf
文档评论(0)