Sync framework 2.0 синхронизирует все таблицы в базе данных

Используя Microsoft Sync Framework 2, есть ли способ синхронизировать все таблицы между двумя базами данных ms sql 2008 без специального добавления каждой таблицы в область?

Спасибо!


person Debra    schedule 24.06.2010    source источник


Ответы (1)


Это именно то, что он делает. Вам нужно будет запустить мастер, чтобы настроить его, но для senario, который вы описываете, это довольно просто, вот ссылка, чтобы узнать больше об этом. http://msdn.microsoft.com/en-us/sync/bb821992.aspx

Вам нужно добавить каждую таблицу в SyncGroup, это невозможно, но вы можете сделать это программно.

Найдите столы

SELECT * FROM sys.Tables

Потом синхронизация.

Dim customerSyncGroup As New SyncGroup("Customer")
Dim customerSyncTable As New SyncTable("Customer")
customerSyncTable.CreationOption = TableCreationOption.DropExistingOrCreateNewTable
customerSyncTable.SyncDirection = SyncDirection.DownloadOnly
customerSyncTable.SyncGroup = customerSyncGroup
Me.Configuration.SyncTables.Add(customerSyncTable)

Просто проверяю, вы пытаетесь синхронизироваться с основного сервера на клиент? Одна из них — SQL 2008 Express, SQL Ce или какая-то другая клиентская база данных?

Если вы пытаетесь синхронизировать два полноценных сервера sql 2008, то есть лучшие варианты, такие как репликация, доставка журналов и т. д.

person JohnnyJP    schedule 11.08.2010
comment
Кроме того, способ ANSI получить список таблиц — SELECT * FROM INFORMATION_SCHEMA.TABLES. Это будет работать практически со всеми двигателями db. - person Seth Spearman; 25.08.2011