数据库——SQL Server触发器
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企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]