2010-03-17 28 views
2

表,因为有些年我驾驶一条sql-SERVER2000合并复制了三个位置的触发器来考虑。触发器在这个数据库中做了很多工作。我没有遇到麻烦。如果使用上的SQL服务器合并复制

现在将这些数据库迁移到一个全新的sql2008,我得到了一些关于触发器的问题。即使合并代理人在工作,他们也会开枪。

有没有人对sql2008-server上那种东西有一些经验? 任何人都可以确认不同的行为sql2000?

和平

回答

5

给这个一读:Controlling Constraints, Identities, and Triggers with NOT FOR REPLICATION

在大多数情况下,默认设置是 合适,但如果应用程序需要不同 行为,他们可以改变 。要考虑的主要区域是 触发器。例如,如果您定义了 设置了NOT FOR REPLICATION选项的插入触发器,则所有用户 都会触发触发器,但从复制代理插入 则不触发。 考虑到将数据插入 到跟踪表的触发器:当 最初插入行的用户,它是 适合触发器触发 并输入一行到跟踪 表,但触发不应该火 时该数据被复制到 用户,因为这会导致 不必要的行被插入到 跟踪表中。

+0

感谢这个解释,你的意思是sql2000下的触发器默认为“不适用于复制”。在sql2008中,必须明确地设置此选项。这是如何在sql2008下运行的改变? – Ice 2010-03-17 21:43:23