你们好,最近小活发现有诸多的小伙伴们对于sql触发器的作用,sql触发器这个问题都颇为感兴趣的,今天小活为大家梳理了下,一起往下看看吧。
1、SQL SERVER中有三类触发器FOR、AFTER、INSTEAD OF
2、1、AFTER 指定触发器仅在触发 SQL 语句中指定的所有操作都已成功执行时才被触发。所有的引用级联操作和约束检查也必须在激发此触发器之前成功完成。用英文简单理解就是 在...之后执行
3、2、FOR的理解就是与AFTER类同,即AFTER(FOR)
4、3、INSTEAD OF,在执行SQL语句前取代。INSREAD OF是指定执行 DML 触发器而不是触发 SQL 语句,因此,其优先级高于触发语句的操作。
5、FOR类的语法
6、CREATE TRIGGER --自定义触发器的名称
7、ON --此处为表名,触发器的表名,意为在哪个表创建触发
8、FOR --触发类型:INSERT、UPDATE、DELETE;分别意为插入时、更新时、删除时触发,依据英文意思理解即可
9、AS
10、BEGIN
11、SET NOCOUNT ON --可有可无
12、--声明变量
13、--相应的select语句,insert语句(update语句、delete语句)
14、SET NOCOUNT OFF--可有可无
15、END
16、GO
17、AFTER类的语法
18、CREATE TRIGGER
19、ON
20、AFTER --定义都个触发,可以用逗号隔开
21、AS
22、BEGIN
23、SET NOCOUNT ON --可有可无
24、--声明变量
25、--相应的select语句,insert语句(update语句、delete语句)
26、SET NOCOUNT OFF--可有可无
27、END
28、GO
29、INSTEAD OF类的语法
30、CREATE TRIGGER
31、ON
32、INSTEAD OF --在表table中执行语句时,先执行此触发器的内容
33、AS
34、BEGIN
35、--声明变量
36、--相应的select语句,insert语句(update语句、delete语句)
37、END
38、GO
以上就是sql触发器这篇文章的一些介绍,希望对大家有所帮助。
标签:
免责声明:本文由用户上传,如有侵权请联系删除!