订户表上的TSQL触发器

时间:2012-03-15 16:20:50

标签: sql tsql transactions triggers rollback

我在SQL Server 2008上有一个复制的订阅者表。我已经在其上放置了一个可能会或可能不会失败的触发器。该表是只读的。

我的问题是:

如果我使用以下

SAVE TRANSACTION savepoint1
BEGIN TRY
...
END TRY
BEGIN CATCH
ROLLBACK TRANSACTION savepoint1
END CATCH

如果我的触发器中存在某些错误(在...部分中),则回滚事务,SQL Server是否会尝试更新或回滚仍然导致错误的只读订阅者表?

感谢。

1 个答案:

答案 0 :(得分:1)

您是否将触发器置于发布者的工作位置?并且您不希望它在订阅者上工作,但您不知道如何禁用它?

如果这是真的,您可以尝试触发器上的NOT FOR REPLICATION标记:

http://msdn.microsoft.com/en-us/library/ms176072.aspx