Sync Framework 支援的資料庫物件
本主題描述同步處理資料庫物件的 Sync Framework 支援。
對等同步處理
DbSyncProvider 支援同步處理資料表。它支援符合結構描述的物件,如 Sales.Customer,其中的 Customer 資料表之前有 Sales 結構描述或擁有者。
對等同步處理不會提供對等資料庫的自動初始化作業。因此,資料表不是在同步處理期間複製到對等資料庫。如需對等初始化的詳細資訊,請參閱 HOW TO:設定及執行共同作業同步處理 (非 SQL Server)中的<初始化伺服器資料庫>。
用戶端與伺服器同步處理
DbServerSyncProvider 支援伺服器資料庫的資料表進行各種同步處理。它支援快照集 (Snapshot) 和僅限下載同步處理的檢視。用戶端上的單一資料表可以包含伺服器端多個資料表的資料。如需詳細資訊,請參閱 HOW TO:在用戶端上建立資料檢視。
不論資料是以何種方式在伺服器上儲存或表示,SQL Server Compact 都會將資料儲存在用戶端上的資料表中。
SQL Server Compact 不支援符合結構描述的物件,如 Sales.Customer,其中的 Customer 資料表之前有 Sales 結構描述或擁有者。如果您要同步處理 AdventureWorks 範例資料庫中的 Sales.Customer 資料表,請為 TableName 指定 Customer 的值。
根據預設,下列物件不會複製到用戶端資料庫:FOREIGN KEY 條件約束、UNIQUE 條件約束、DEFAULT 條件約束和 SQL Server ROWGUIDCOL 屬性。如果您需要這些物件在用戶端資料庫中,請使用 SQL 加入這些物件,或將這些物件加入至 SyncSchema 物件。如需詳細資訊,請參閱 HOW TO:初始化用戶端資料庫及使用資料表結構描述。
Sync Framework 支援伺服器上區分大小寫的定序,但是有下列限制:
主索引鍵資料行以及具有唯一索引或約束條件的資料行,都不能包含只是大小寫不同的值,例如 VALUE1 和 value1。
不支援同步處理只是大小寫不同的資料庫物件,如 TABLE1 和 table1。
伺服器上的資料庫可以參與多個同步處理工作階段,但是該資料庫中的物件一次只能和一個特定用戶端參與一個同步處理工作階段。如果資料表正在進行同步處理,而再次為該資料表呼叫 Synchronize 方法,Sync Framework 會擲回例外狀況。用戶端資料庫一次只能支援一個同步處理工作階段。