SQL Server 2008编程入门经典笔记:触发器

来源:互联网 发布:电商会计做账软件 编辑:程序博客网 时间:2024/05/29 14:29

触发器的概念

两种:数据定义语言触发器(DDL非常高级的概念)、数据操纵语言触发器(DML)。
可将触发器添加到一下事件:
INSERT、DELETE、UPDATE、三种任意类型的混合。
基本语法(详细语法见书399):
CREATE TRIGGER <触发器名字>
ON [.] <表名或视图名>

1、ON子句
如果触发器使用after那么这里必须指定为表。
2、WITH ENCRYPTION选项
用于加密。
3、FOR|AFTER子句与INSTEAD OF子句
1)FOR|AFTER
1.1、INSERT触发器
1.2、DELETE触发器
1.3、UPDATE触发器
4、WITH APPEND选项(不常用)
5、NOT FOR REPLICATION选项
6、AS子句

使用触发器实施数据完整性规则

1、处理来自于其他表的需求
2、使用触发器来检查更新的变化
3、将触发器用于自定义错误消息

触发器的其他问题

1、触发器可以嵌套
2、触发器可以递归
3、触发器不能防止体系结构的修改
4、可以在不删除的情况下关闭触发器
5、触发器的激活顺序
1)出于逻辑原因而控制激活顺序
2)出于性能原因而控制激活顺序

性能考虑

1、触发器的被动性
2、触发器与激活的进程之间不存在并发问题
3、使用IF UPDATE()和COLUMNS_UPDATED()
1)UPDATE()函数
2)COLUMNS_UPDATED()函数
4、保持触发器短小精悍
5、选择索引时不要忘记触发器
6、不要在触发器中进行回滚

删除触发器

语法:DROP TRIGGER [.]

阅读全文
0 0