C# 是否以编程方式删除Sql Ce系统表?
我正在使用SQL Server Compact(SQL CE)和同步框架。但是,同步框架在调用SqlCeClientSyncProvider的CreateSchema()方法时会创建一些系统表(例如u sysSyncArticle、u sysSyncSubscription、…) 我无法使用Visual Studio中的SQL语句删除这些表(声明“不支持drop table”),并且在尝试创建SQLCECOMM时,我收到一条消息,说明指定的表不存在C# 是否以编程方式删除Sql Ce系统表?,c#,sql-server-ce,microsoft-sync-framework,C#,Sql Server Ce,Microsoft Sync Framework,我正在使用SQL Server Compact(SQL CE)和同步框架。但是,同步框架在调用SqlCeClientSyncProvider的CreateSchema()方法时会创建一些系统表(例如u sysSyncArticle、u sysSyncSubscription、…) 我无法使用Visual Studio中的SQL语句删除这些表(声明“不支持drop table”),并且在尝试创建SQLCECOMM时,我收到一条消息,说明指定的表不存在 如何以编程方式删除SQL CE系统表?Joac
如何以编程方式删除SQL CE系统表?Joachim,您需要在这方面使用同步框架,而不是使用它。数据库的重点是跟踪同步元数据。如果希望它是不同的副本(不同的锚、客户端id等),则将其设置为不同的副本 我建议您看看新的MSF2.0,特别是资源调配和管理API。它们似乎提供了您所需要的更多灵活性。
uhh。。。我认为一个更好的问题是为什么要删除系统表。你知道它们是干什么用的吗?或者您只是因为不喜欢混乱而试图删除它们?在某些特殊情况下,我必须重置同步过程,删除一些其他表,但希望保留一些其他表,因此完全删除数据库不是一个选项。我想删除这些系统表,因为我想重置同步进程的所有元数据(上次同步锚点、客户端id、服务器id等)。