SQL Server触发器以For类为列
-
定义
触发器是一种专用类型的存储过程,它被捆绑到SQL Server 的表格或者视图上。
1、AFTER 指定触发器仅在触发 SQL 语句中指定的所有操作都已成功执行时才被触发。所有的引用级联操作和约束检查也必须在激发此触发器之前成功完成。用英文简单理解就是 在…之后执行
2、FOR的理解就是与AFTER类同,即AFTER(FOR)
3、INSTEAD OF,在执行SQL语句前取代。INSREAD OF是指定执行 DML 触发器而不是触发 SQL 语句,因此,其优先级高于触发语句的操作。 -
作用
它可以强化约束,来维护数据的完整性和一致性,可以跟踪数据库内的操作从而不允许未经许可的更新和变化。
使用的范围:Where
比如,商品新增的时候,改商品类型的库存要加1。 -
语法
-
FOR类的语法
CREATE TRIGGER tf_name --自定义触发器的名称
ON table --此处为表名,触发器的表名,意为在哪个表创建触发
FOR INSERT --触发类型:INSERT、UPDATE、DELETE;分别意为插入时、更新时、删除时触发,依据英文意思理解即可
AS
BEGIN
SET NOCOUNT ON --可有可无
DECLARE @… ; --声明变量
select
insert
–相应的select语句,insert语句(update语句、delete语句)
SET N