灯火互联
管理员
管理员
  • 注册日期2011-07-27
  • 发帖数41778
  • QQ
  • 火币41290枚
  • 粉丝1086
  • 关注100
  • 终身成就奖
  • 最爱沙发
  • 忠实会员
  • 灌水天才奖
  • 贴图大师奖
  • 原创先锋奖
  • 特殊贡献奖
  • 宣传大使奖
  • 优秀斑竹奖
  • 社区明星
阅读:2775回复:0

[SQLServer书籍]SQL Server 2008触发器.ppt版

楼主#
更多 发布于:2012-10-22 10:18
SQL Server 2008触发器
引入
数据的完整性是为了防止数据库中存在不符合语义的数据。
一种是在定义表时声明数据完整性,称为声明完整性。
另一种是在服务器端编写触发器来实现,称为过程完整性。完成比参照完整性约束和CHECK约束更复杂的数据约束。
1 触发器概述
2 Deleted表和Inserted表
3 定义触发器
4 查看触发器
5 删除触发器
1 触发器概述
触发器是一种特殊的存储过程,它是在执行某些特定的T-SQL语句时自动执行的一种存储过程。
不需要由用户调用执行,而是当用户对表中的数据进行UPDATE、INSERT或DELETE操作时自动触发执行的。
SQL  Server提供以下两种触发方式:
后触发:在触发操作(INSERT、 UPDATE或DELETE)执行完成,并处理过所有约束后激活触发器,这种方式称做后触发。如果触发操作违反约束条件,将导致事务回滚,这时就不会执行后触发器。但在视图上不能采用后触发方式定义触发器。
替代触发:当触发操作发生时,数据库引擎首先创建临时inserted表和deleted表,之后,SQL  Server停止执行通常的操作,而转去执行替代触发器。
2 Deleted表和Inserted表
在触发器执行的时候,系统会产生两个临时表:inserted 表和deleted 表。
它们的结构和触发器所在的表的结构相同,SQL Server2008 自动创建和管理这些表。
可以使用这两个临时的驻留内存的表测试某些数据修改的效果及设置触发器操作的条件,然而不能直接对表中的数据进行更改。


点击下载

喜欢0 评分0
游客

返回顶部