2008-10-23 3 views
0

Я использую SQL Server Compact (SQL CE) вместе с инфраструктурой синхронизации. Однако структура синхронизации создает некоторые системные таблицы при вызове метода CreateSchema() SqlCeClientSyncProvider (например, __sysSyncArticle, __sysSyncSubscription, ...).Программно ли программные таблицы Sql Ce?

Я не могу удалить эти таблицы с помощью операторов SQL в Visual Studio (заявляет, что «drop table не поддерживается»), и при попытке создать SqlCeCommand я получаю сообщение о том, что указанные таблицы не существуют.

Что нужно для программной таблицы SQL CE?

+0

Мне нужно перезагрузить процесс синхронизации в некоторых особых случаях, удалить некоторые другие таблицы, но хотите сохранить некоторые другие, поэтому полное удаление базы данных не является вариантом. Я хочу удалить эти системные таблицы, потому что я хочу, чтобы все метаданные (последний синхронизирующий якорь, идентификатор клиента, идентификатор сервера и т. д.) были сброшены для процесса синхронизации. – 2008-10-23 18:48:20

ответ

1

Joachim, вам нужно работать с Sync Framework, но не против него. Точка базы данных предназначена для отслеживания метаданных синхронизации. Если вы хотите, чтобы это была другая реплика (другой якорь, идентификатор клиента и т. Д.), Установите его как другую реплику.

Предлагаю вам взглянуть на новый MSF 2.0, в частности на Provisioning and Management API. Они, похоже, обеспечивают большую гибкость, в которой вы нуждаетесь. Sync Framework v2