【问题标题】:TOP 100 INSERT INTO linked server from local table then delete the inserted rows in local table?TOP 100 INSERT INTO 链接服务器从本地表然后删除本地表中插入的行?
【发布时间】:2018-11-13 16:02:32
【问题描述】:

有人知道怎么做吗?现在我在本地表上创建了一个触发器:

CREATE TRIGGER TRG_AUD_DEL
ON [LocalTable]
FOR DELETE
AS
    INSERT INTO [LinkedServerTable] (columns, columns2)
        SELECT
            (Columns, Columns2)
        FROM DELETED

然后我将执行如下查询:

DELETE TOP 100 from [LocalTable]

但是我的问题是,如果插入不起作用会怎样?例如,由于超时或链接服务器已关闭。本地表中的记录还会被删除吗? (我希望它不会)

【问题讨论】:

    标签: sql sql-server triggers linked-server


    【解决方案1】:

    如果触发器失败,则回滚整个事务。这意味着如果触发器内的链接服务器的INSERT 失败,DELETE 也将被回滚,并且不会删除行。

    【讨论】:

      猜你喜欢
      • 2016-04-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-11-11
      • 1970-01-01
      相关资源
      最近更新 更多