当前位置: 首页 > 图文教程 > 数据库 > MSSQL > SQL Server数据库技术(77)

MSSQL
如何得到当前所在的sql的数据库名称
在VB中压缩ACCESS数据库
如何在SQL Server中恢复数据
解决SQL速度慢的方法
SELECT语句中“加锁选项”功能说明
在英文NT及SQL下,实现页面中中文出现
一个复合查询方法
利用Case敘述做SQL的動態排列
使用特殊数据
特殊数据(SQL)
SELECT查询的应用(一)
SELECT查询的应用(二)
SELECT查询的应用(三)
SQL Server如何解决加密问题?
如何在应用程序中避免死锁问题?
事务日志被填满的原因是什么?
讨论: SELECT TOP N问题 (2)
如何转移SQL SERVER数据库
SQL Server性能分析参数
用VB6读写数据库中的图片

MSSQL 中的 SQL Server数据库技术(77)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-30   浏览: 134 ::
收藏到网摘: n/a

   在本章第五节我们已经指出SQL Server 2000 支持AFTER 和INSTEAD OF 两种类型的触发器。其中INSTEAD OF 触发器是SQL Server 2000 的新添加的功能,AFTER 触发器等同于以前版本中的触发器。当为表或视图定义了针对某一操作(INSERT、 DELETE、 UPDATE) 的INSTEAD OF 类型触发器且执行了相应的操作时,尽管触发器被触发,但相应的操作并不被执行,而运行的仅是触发器SQL 语句本身。

    INSTEAD OF 触发器的主要优点是使不可被修改的视图能够支持修改。其中典型的例子是分割视图(partitioned view)。为了提高查询性能,分割视图通常是一个来自多个表的结果集,但是也正因此而不支持视图更新。下面的例子说明了如何使用INSTEAD OF触发器来支持对分割视图所引用的基本表的修改。


  

    此时能够成功执行插入语句 insert into saleview values (‘jul001’,’先科VCD’,200)。 INSTEAD OF 触发器的另外的优点是,通过使用逻辑语句以执行批处理的某一部分而放弃执行其余部分。比如,可以定义触发器在遇到某一错误时,转而执行触发器的另外部分。