




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
DML触发器的原理触发器中的两张特殊表在执行触发器的过程中会产生两张临时表INSERTED和DELETED,这两张表的作用简单说就是拿来记录数据的,我们可以在触发器执行过程中更好的对数据进行操作DELETED表存储DELETE和UPDATE语句所影响的行的副本。INSERTED表存储INSERT和UPDATE语句所影响的行的副本。触发器的工作原理对表执行INSERT和UPDATE操作时都会在临时表INSERTED中拷贝一份所增加的数据。对表执行DELETE和UPDATE操作时都会在临时表DELETED中拷贝一份所删除的数据对表执行UPDATE操作时,首先把UPDATE前的数据DELETE到DELETED临时表中,然后再把所要更新的数据插入表中,最后把更新后的数据拷贝到INSERTED临时表中触发器的工作原理这两张表是在用户执行数据的增、删、改操作时,由SQLSERVER自动创建和管理,驻留在内存。这两张表结构与触发器作用的表的结构相同,并且只可以被触发器使用。触发器结束时,系统自动释放这两个表的空间。在触发器中可以对这两张表查询,但不可直接对这两张表中的数据进行更改。触发器的工作原理激活触发器的事件Inserted表Deleted表Insert存放要插入的记录
Update存放要更新的记录存放更新前的旧记录Delete
存放要删除的旧记录插入/删除表的功能触发器的工作原理使用触发器的最终目标是为了更好地维护企业的业务规则,实现由主键和外键所不能保证的复杂参照完整性和数据一致性。除此以外,使用触发器还有以下的一些功能:1.可以强化约束触发器可以强制比CHCEK约束更复杂的数据完整性。在CHECK约束中不允许引用其他表中的列来完成检查工作,而触发器则可以引用其他表中的列来完成数据完整性的约束。2.可以实现数据库中多张表的级联运行触发器可以侦测数据库内的操作,并自动地级联整个数据库的各项内容。触发器的作用3.可以跟踪数据变化触发器可以跟踪数据库内的操作,用户可在触发器中引用由于修改所影响的记录行,当数据库发生了未经许可的更新和变化时,撤销或者回滚操作使数据库修改、更新操作更安全,数据库运行更稳定。4.使用自定义的错误信息
用户有时需要在数据完整性遭到破坏或其他情况下,发出预先自定义好的错误信息或动态自定义的错误信息5.可以调用存储过程触发器操作可以通过调用一个或多个存储过程,甚至可以通过调用外部过程完成相应的操作。触发器的作用
触发器定义在指定的表上,这个表称为触发器表。
它是在操作有效后才执行的,即其他约束优先于触发器
它与存储过程的不同之处在于存储过程可以由用户直接调用,而触发器不能被直接调用,是由操纵事件触发的
一个表可以有多个触发器,在不同表上同一种类型的触发器也可以有多个触发器允许嵌套,最多为32层是操纵事务的一部分可以将触发器和触发它的语句作为可在触发器内回滚的单个事务对待。触发器的特点After触发器只能用于数据表中,InsteadOf触发器可以用于数据表和视图上,但两种触发器都不可以建立在临时表上。一个数据表可以有多个触发器,但是一个触发器只能对应一个表。在同一个数据表中,对每个事件(如Insert、Update、Delete)而言可以建立许多个After触发器,但InsteadOf触发器针对每个操作只有建立一个。如果针对某个操作即设置了After触发器又设置了InsteadOf触发器,那么Insteadof触发器一定会激活,而After触发器就不一定会激活了。触发器的注意事项TruncateTable语句虽然类似于Delete语句可以删除记录,但是它不能激活Delete类型的触发器。因为TruncateTable语句是不记入日志的。WRITETEXT语句不能触发
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- Tenascin C调控钠通道的作用机制研究
- 科技创新与教育革新-如何推动教育现代化
- 基于拉曼光谱的粳稻品种耐盐碱鉴别机理与模型研究
- 钨酸盐企业数字化转型与智慧升级战略研究报告
- 女装拖鞋企业数字化转型与智慧升级战略研究报告
- 金属加工企业数字化转型与智慧升级战略研究报告
- 妇产科专科医院服务升级企业制定与实施新质生产力战略研究报告
- 过碳酸盐企业县域市场拓展与下沉战略研究报告
- 实验室设计行业深度调研及发展战略咨询报告
- 彩棉文胸企业县域市场拓展与下沉战略研究报告
- 水力压裂技术详解334页(PPT 最新技术)_ppt
- 布洛维:拓展个案法
- SolidWorksTopDown设计方法实际应用
- 七年级历史第5课--安史之乱与唐朝衰亡ppt课件
- 户外LED显示屏设计施工方案.docx
- 上岗证WORD模板
- 净土资粮——信愿行(05)第三讲安住在弥陀大愿之海
- 化工车间开停车风险分析
- 市政小三线施工方案(共22页)
- 静压桩机、钻孔灌注桩、沉槽机CAD图形
- 易经(拼音版)
评论
0/150
提交评论