0

SQL Server 2008 R2を実行している2つの独立したWindows 2008 R2サーバー間にトランザクションレプリケーションをセットアップしました。私は、パブリッシャサーバでSSMSを使用してレプリケーションを設定しています。SQL Server 2008 R2レプリケーションのスキーマに既定値の設定を含める方法

パブリケーションの記事を作成するときにデータベース内のすべてを選択しました。 (表、ストアド・プロシージャー、ビュー、索引付きビューおよびユーザー定義関数)。スナップショットを作成した後、レプリケーションを開始しました。すべてが正しく動作するように見えました。私は何の誤りもなかった。

ただし、SSMSを使用するデザインビューでサブスクライバのレプリケートされたテーブルの一部を見ると、パブリッシャデータベースに存在する「既定値またはバインディング」セクションに値がありません。

「デフォルト値またはバインディング」について説明しているパブリケーションプロパティで設定が見つかりません。パブリケーションのプロパティの[サブスクリプションオプション]タブで[スキーマの変更をレプリケートする]をtrueに設定しました。

私はここで何が欠けていますか?レプリケーションによってテーブルスキーマに設定されたデフォルト値がサブスクライバにコピーされるべきではありませんか?

例として、この問題が発生している1つの特定のテーブルに関連するレプリケーションスクリプトのセクションを示します。

exec sp_addarticle @publication = N'Main_All', @article = N'Piece_Details2', @source_owner = N'dbo', @source_object = N'Piece_Details', @type = N'logbased', @description = N'', @creation_script = N'', @pre_creation_cmd = N'drop', @schema_option = 0x000000000803509F, @identityrangemanagementoption = N'none', @destination_table = N'Piece_Details', @destination_owner = N'dbo', @status = 24, @vertical_partition = N'false', @ins_cmd = N'CALL [sp_MSins_dboPiece_Details]', @del_cmd = N'CALL [sp_MSdel_dboPiece_Details]', @upd_cmd = N'SCALL [sp_MSupd_dboPiece_Details]' 

ご協力いただきありがとうございます。

答えて

1

私はあなたの複製タイプに対して間違った応答をしたので私の最後の答えを削除しました。パブリケーションのアーティクルを選択すると、という既定値の指定がのサブスクライバにコピーされ、既定値はfalseになります。この値をtrueに設定すると、制約がサブスクライバに適用されていることを確認する必要があります。記事を選択する際は、「記事のプロパティ」を参照してください。すべてまたは1つに適用することができます。

+0

私に正しい方向を指してくれてありがとう。この変更を適用するために既存の出版物を編集する方法を知っていますか? – EiEiGuy

+0

あなたはsp_changearticleを調べることができますが、記事の変更を複製するには新しいスナップショットが必要になります。 –

+0

私は出版物を作り直して、提案した通りに正しい特性を選択することに決めました。あなたの助けをありがとう。 – EiEiGuy

関連する問題