数据库——SQL Server触发器

打印 上一主题 下一主题

主题 802|帖子 802|积分 2406

1. 触发器概述

触发器:做变乱-条件-动作规则(event-condition-action rule, ECA rule) 当特定的系统变乱发生时,对规则的条件举行查抄 假如条件成立则实验规则中的动作,否则不实验该动作 规则中的动作体可以很复杂,通常是一段SQL存储过程。


  • 触发器(trigger)是用户定义在关系表上的一类由变乱驱动的特殊过程
  • 触发器可以实验更为复杂的查抄和操纵,具有更精细和更强大的数据控制能力
  • 触发器保存在数据库服务器中
  • 任何用户对表的增、删、改操纵均由服务器自动激活相应的触发器,在关系数据库管理系统核心层举行集中的完整性控制
2. 触发器的长处

触发器是自动的。当对表中的数据做了任何修改之后立即被激活。 触发器可以通过数据库中的相关表举行层叠修改。 触发器可以逼迫限制。这些限制比用CHECK约束所定义的更复杂。与CHECK约束不同的是,触发器可以引用其他表中的列。
3. 触发器的作用

触发器的主要作用有以下几个方面:
   1. 逼迫数据库间的引用完整性
  2. 级联修改数据库中所有相关的表,自动触发其它与之相关的操纵
  3. 跟踪变化,撤销或回滚违法操纵,防止非法修改数据
  4. 返回自定义的错误消息,约束无法返回信息,而触发器可以
  5. 触发器可以调用更多的存储过程
  4. 触发器分类

SqlServer包罗三种常规类型的触发器:DML触发器、DDL触发器、登录触发器
   4.1 DML触发器

  SqlServer中的DML触发器有三种:
  
      
  • insert触发器:向表中插入数据时被触发;  
  • delete触发器:从表中删除数据时被触发;  
  • update触发器:修改表中数据时被触发。
  当遇到下列情况时,应思量使用DML触发器:
  
      
  • 通过数据库中的相关表实现级联更改。  
  • 防止恶意或者错误的insert、update和delete操纵,并逼迫实验check约束定义的限

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

天津储鑫盛钢材现货供应商

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表