2つのSQLServer2005データベースがあります-ParentDB
とChildDB
、同期フレームワーク2.1を使用してそれらを同期したいのです
ParentDB
が、サーバー上にChildDB
あり、クライアントm/c上にあります。には多くのテーブルがありますが、ParentDB
上のテーブルはほとんどありませChildDB
ん。たとえば、主キーが自動インクリメントに設定されているCustomer
両方のデータベース間でテーブルが共通でありId (column)
、このテーブルを同期したい場合は、次のmsdnの例に示すアプローチを使用しています。このアプローチは、サーバーからダウンロードするかサーバーにアップロードするだけでない限り、機能しました。
シナリオを考えてみましょう:
1。サーバーテーブルにId = 52の行があります
2.両方のデータベースが同期されて
います3.これで、Id=53のテーブルに行が挿入さParentDB
れます
4.同時に別の行がに挿入されますId = 53のテーブル(両方のテーブルに自動インクリメントがあるため)
これで、両方のテーブルを同期すると、同期の方向に応じて、2つの行のいずれかがオーバーライドされます。
私が欲しいのはそれが調整され、両方の行が保持されることです、 Customer
ChildDB
Customer
Id
このような競合を解決するにはどうすればよいですか。可能であれば、擬似コードを提供してください。
PS:外部キー制約を考慮すると、シナリオはより複雑になると思います。
事前にThnx