CREATE TRIGGER TR_sync
ON Article
INSTEAD OF INSERT, UPDATE, DELETE
AS
DELETE B
FROM B库.dbo.Article B, deleted D
WHERE B.主键 = D.主键;INSERT B库.dbo.Article(
可以追加数据的列的列表)
SELECT
需要复制的列的列表
FROM inserted;
GO

解决方案 »

  1.   

    你是要在视图 Article 增加触发器吗,最好还是在基表增加触发器,好控制点
      

  2.   


    估计不能delete,他要追加,但是不知道他想怎么同步删除、修改的记录
      

  3.   

    -- 更新要保留状态, 考虑这个CREATE TRIGGER TR_sync
    ON Article
    INSTEAD OF INSERT, UPDATE, DELETE
    AS
    IF EXISTS(
    SELECT * FROM inserted)
    BEGIN
    IF EXISTS(
    SELECT * FROM deleted)
    BEGIN  -- 更新
    UPDATE B SET
    可更新的列1 = I.可更新的列1,
    可更新的列2 = I.可更新的列2,
    -- ...
    可更新的列n = I.可更新的列n
    FROM B库.dbo.Article B, inserted I
    WHERE B.主键 = I.主键;   -- 要求主键不能更新
    END
    ELSE
    BEGIN  -- 插入
    INSERT B库.dbo.Article(
    可以追加数据的列的列表)
    SELECT
    需要复制的列的列表
    FROM inserted;
    END
    END
    ELSE
    BEGIN  -- 删除
    DELETE B
    FROM B库.dbo.Article B, deleted D
    WHERE B.主键 = D.主键;
    END
    GO
      

  4.   

    定时触发!
    ?我看用个job定时进行同步可操作性强一些