「NOT FOR REPLICATION」オプションを持つ主キー


20

私は最近プロジェクトを引き継ぎましたが、ほとんどのテーブルで主キーにプロパティ " NOT FOR REPLICATION" があることを発見しました。

私はDBAではありませんが、ほとんどのデータベースでは、主キーのないレコードは破損していると考えられます。ほとんどの場合、これらのレコードの主キーはどこかで外部キーとして使用されます。

これは以前の開発者(会社で働いていなかった)側のエラーですか、それとも他のロジックが関係していますか?実稼働環境ではレプリケーションさえ使用しないため、これは実際には深刻な問題には影響しませんが、気付いていないこれらのディレクティブをすべて削除する他の副作用があるかどうか疑問に思っていました。

私はこのトピックに関連する多くの検索用語で多くの有用なヒットを見つけていないので、これは私が逆にする必要がある単なる愚かなエラーであることをかなり確信しているので、この質問は本当に私の妄想を和らげることです。

回答:


24

NOT FOR REPLICATIONは、レコードがこのテーブルにレプリケートされたときに、レプリケーションエージェントを介してID列に挿入された値がソースシステムからの元の値を保持しますが、ローカルに追加されたレコードはID値をインクリメントすることを示します。

更新:古いリンクが壊れています

以下は、NOT FOR REPLICATIONの設定の詳細を説明するtable_constraintドキュメントへのリンクです。

テーブル制約


2
リンクが腐っている
アレクサンドルKravets

@AleksandrKravets歓声、更新
一時的な
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.