2

レプリケーションを設定したいSQLServer2005データベースがあります。問題は、データベースに2つのスキーマがあり、どちらにも同じ名前のテーブルが含まれていることです。

何らかの理由で、テーブルが異なるスキーマにある場合でも、記事名が競合しているため、Management Studioを介してレプリケーションの作成が失敗します(異なるスキーマの両方のテーブルに同じ名前を作成しようとしていると想定しています)。

スタジオでこれを行うための回避策はありますか?おそらくこれを行うためのスクリプトまたはプログラムを書くことができますが、これだけのために少し面倒であり、おそらく本番環境での実行は許可されません。

おそらく、ホットフィックスまたは私が知らない何かがありますか?

乾杯、

4

2 に答える 2

1

SSMSの新しいパブリケーションウィザードを純粋に使用してこれを回避する方法はないようです-記事名は常にスキーマ修飾子のないテーブル名であり、ウィザードからカスタマイズすることはできません-作業はありますが-スクリプトオプションを使用する場合。

通常どおりウィザードを実行しますが、プロセスの最後に、[パブリケーションの作成]オプションのチェックを外し、[スクリプトファイルの生成...]オプションを選択します。

ファイルが作成されたら、ファイルを開いて記事名を編集し、競合が発生しないようにしてから、パブリケーションデータベースでスクリプトを実行します。

于 2010-12-23T10:48:12.857 に答える
0

データベースに2つのパブリケーションがあり、各パブリケーションがスキーマの1つにリンクされていると考えられますか?もちろん、これは、パブリケーションごとに1つずつ、2つの異なるサブスクライバーを定義する必要があることを意味します。もちろん、この提案の実現可能性は、加入者間でデータをどのように配布する必要があるか、およびユーザーがデータにアクセスする方法に大きく依存します。

于 2011-05-28T11:38:05.850 に答える