2014.9.12触发器.索引.视图.游标
(一)触发器
什么是触发器?
触发器是一种特殊类型的存储过程,它不同于存储过程。触发器主要是通过事件进行触发被自动调用执行的。而存储过程可以通过存储过程的名称被调用。
触发器和普通的存储过程的区别是:触发器是当对某一个表进行操作。诸如:update、insert、delete这些操作的时候,系统会自动调用执行该表上对应的触发器。
1、after触发器(之后触发)
insert触发器
update触发器
delete触发器
2、instead of 触发器 (之前触发)
其中after触发器要求只有执行某一操作insert、update、delete之后触发器才被触发,且只能定义在表上。而instead of触发器表示并不执行其定义的操作(insert、update、delete)而仅是执行触发器本身。既可以在表上定义instead of触发器,也可以在视图上定义。
inserted,deleted临时表
a.这两个表是由系统管理的,存储在内存中,不是存储在数据库中,因此不允许用户直接对其修改,是只读的。 b.这两个表的结构总是与被该触发器作用的表有相同的表结构。c. 这两个表是动态驻留在内存中的,当触发器工作完成,这两个表也被删除。d. 这两个表主要保存因用户操作而被影响到的原数据值或新数据值。
(未完待续)