打印本文 打印本文 关闭窗口 关闭窗口
SQL 2000中的触发器使用
作者:武汉SEO闵涛  文章来源:敏韬网  点击数8724  更新时间:2007/11/14 13:06:33  文章录入:mintao  责任编辑:mintao
示例

在本例中,创建了一个德国客户表和一个墨西哥客户表。放置在视图上的INSTEAD OF触发器将把更新操作重新定向到适当的基表上。这时发生的插入是CustomersGer表的插入而不是对视图的插入。

创建两个包含客户数据的表:

SELECT * INTO CustomersGer FROM Customers WHERE Customers.Country = ''''Germany''''

SELECT * INTO CustomersMex FROM Customers WHERE Customers.Country = ''''Mexico''''

GO

 

 

在该数据上创建视图

CREATE VIEW CustomersView AS

SELECT * FROM CustomersGer

UNION

SELECT * FROM CustomersMex

GO

 

 

创建一个在上述视图上的INSTEAD OF触发器

CREATE TRIGGER Customers_Update2

ON CustomersView

INSTEAD OF UPDATE AS

DECLARE @Country nvarchar(15)

SET @Country = (SELECT Country FROM Inserted)

IF @Country = ''''Germany''''

  BEGIN

   UPDATE CustomersGer

    SET CustomersGer.Phone = Inserted.Phone

    FROM CustomersGer JOIN Inserted

上一页  [1] [2] [3] [4] [5] [6] [7] [8] [9]  下一页

打印本文 打印本文 关闭窗口 关闭窗口