2


0

SQLサーバーマージレプリケーションのテーブルでトリガーを使用する場合の考慮事項

数年前から3つの場所でsql-server2000マージレプリケーションを実行しています。 トリガーはこのデータベースで多くの作業を行います。 トラブルはありませんでした。

これらのデータベースを最新のsql2008に移行すると、トリガーに関する問題が発生しました。 彼らはマージエージェントが彼の仕事をしたとしても発砲しています。

sql2008-serverでそのようなことを経験した人はいますか? 誰かがsql2000とは異なる動作を確認できますか?

平和

Ice

1 Answer


5


これを読んでください:http://msdn.microsoft.com/en-us/library/ms152529.aspx [複製禁止のための制約、ID、トリガーの制御]

_ ほとんどの場合、デフォルトの設定が適切ですが、アプリケーションで別の動作が必要な場合は変更できます。 考慮すべき主な領域はトリガーです。 たとえば、NOT FOR REPLICATIONオプションを設定して挿入トリガーを定義すると、すべてのユーザー挿入がトリガーを起動しますが、レプリケーションエージェントからの挿入は起動しません。 トラッキングテーブルにデータを挿入するトリガーを検討してください。ユーザーが最初に行を挿入した場合、トリガーが起動してトラッキングテーブルに行を入力するのが適切ですが、そのデータがサブスクライバーにレプリケートされたときにトリガーを起動しないでください、トラッキングテーブルに不要な行が挿入されるためです。 _