0

Organization tableデータベースにとがありSite tableます。

アプリケーションはさまざまな場所にインストールされGeographical Sites、各サイトには独自のローカル データベースがあります。

Sql Azure Synchronization Group毎週 1 回、すべてのサイト データを同期するために使用しています。他のすべてのデータが 1 週間で同期されるのは問題ありませんが、この 1 つのテーブルSite- 新しいサイトが挿入されるたびに、このサイトの一意の識別子が必要です -GUID他の場所で使用したものを使用できることはわかっていますが、のみを使用するための要件ですINT

を使用するINTと、同じINTキーが別の場所に挿入される可能性があり、同期時にレコードが上書きされて失われる可能性がありますSites

INTこのテーブルに挿入された各レコードに一意の主キーを持たせるにはどうすればよいですか?

可能な解決策を教えてください。

4

1 に答える 1

1

これらは別個のデータベースであるため、SQL Azure が一意のサイト ID を提供する唯一の方法は、Guid を使用することです。おそらく、サイトを作成する前に呼び出す、シーケンシャルな INT を発行するための単純な WCF サービスをステージングすることができます (また、テーブル行の「次の ID」などを保持することもできます。作成する必要があります)。シングルトンまたは ID を再利用せずに複数の ID を発行できる WCF サービス WCF サービスを呼び出すコードで問題が発生する可能性があるため、未使用のサイト INT が時々発生する可能性がありますが、ID にギャップがあっても問題ない場合は、これは問題ではありません。

于 2012-03-25T20:23:58.747 に答える