2008-10-23 47 views
0

我正在使用SQL Server Compact(SQL CE)和同步框架。但是,在调用SqlCeClientSyncProvider的CreateSchema()方法(例如__sysSyncArticle,__sysSyncSubscription,...)时,同步框架会创建一些系统表。以编程方式删除Sql Ce系统表?

我无法使用Visual Studio中的SQL语句删除这些表(指出“不支持drop table”),并且当试图创建SqlCeCommand时,我收到一条消息指出表不存在。

以编程方式删除SQL CE系统表需要什么?

+0

我必须在某些特殊情况下重置同步过程,但也要删除其他一些表,但要保留其他一些表,因此完全删除数据库不是一种选择。我想删除这些系统表,因为我想要所有的元数据(最后同步锚点,客户端ID,服务器ID等),以便重新设置同步过程。 – 2008-10-23 18:48:20

回答

1

Joachim,您需要在此上使用Sync Framework,而不是针对它。数据库的要点是跟踪同步元数据。如果你希望它是一个不同的副本(不同的锚,客户端ID等),然后将其设置为不同的副本。

我建议你看看新的MSF 2.0,特别是Provisioning和Management API。他们似乎提供了更多您需要的灵活性。 Sync Framework v2