触发器概述
触发器是一个特殊的存储过程,它的执行不是由程序调用,也不是手工启动,而是当某一事件发生时触发,例如当表执行deletet insert update时就会被执行。触发器是用来维护表数据的完整性
触发器分为:
after触发器(之后触发)
instead of 触发器 (之前触发)
触发器里有两章特殊的表插入表(instered表)和删除表(deleted表),这两张是逻辑表也是虚表。有系统在内存中创建者两张表,不会存储在数据库中。而且两张表的都是只读的,只能读取数据而不能修改数据。这两张表的结果总是与被改触发器应用的表的结构相同。当触发器完成工作后,这两张表就会被删除。Inserted表的数据是插入或是修改后的数据,而deleted表的数据是更新前的或是删除的数据。
使用触发器的优点
使用触发器有如下优点:
自动执行。触发器在对表的数百据作了任何修改(比如手工输入或者应用程度序的操作)之后立即被激活。
级联更新。触发器可以通过数据库中的相关表进行层叠更改,这比直接把问代码写在前台的做法更安全合理。
强化约束。触发器可以引用其它表中的列,能够实现答比CHECK约束更为复杂的约束。
跟踪变化。触发器可以阻止数据库中未经许可版的指定更新和变化。
强制业务逻辑。触发器可用于执行管权理任务,并强制影响数据库的复杂业务规则。
建立两个表及关系