2008-10-23 2 views
0

저는 Sync Framework와 함께 SQL Server Compact (SQL CE)를 사용하고 있습니다. 그러나 동기화 프레임 워크는 SqlCeClientSyncProvider의 CreateSchema() 메서드 (예 : __sysSyncArticle, __sysSyncSubscription ...)를 호출 할 때 시스템 테이블을 만듭니다.Sql Ce 시스템 테이블을 프로그래밍 방식으로 삭제 하시겠습니까?

Visual Studio 내에서 SQL 문을 사용하여 이러한 테이블을 삭제할 수 없습니다 ("테이블 삭제 기능이 지원되지 않음"). SqlCeCommand를 만들려고 할 때 지정된 테이블이 없다는 메시지가 나타납니다.

프로그래밍 방식으로 SQL CE 시스템 테이블을 삭제하려면 무엇이 필요합니까?

+0

일부 특수한 경우에는 동기화 프로세스를 재설정해야하지만 일부 다른 테이블도 삭제해야하지만 일부는 유지해야하므로 데이터베이스를 완전히 삭제하는 것은 옵션이 아닙니다. 나는 재설정 된 동기화 프로세스에 대한 모든 메타 데이터 (마지막 동기화 앵커, 클라이언트 ID, 서버 ID 등)를 원하기 때문에 해당 시스템 테이블을 삭제하려고합니다. –

+0

Uhhh ... 더 나은 질문은 왜 시스템 테이블을 삭제하려고하는지입니다. 그들이 무엇인지 알아? 아니면 혼란을 싫어하기 때문에 그냥 삭제하려고합니까? – TheSmurf

답변

1

요아킴, 당신은 이것에 대한 동기화 프레임 워크와 함께 작업해야합니다. 데이터베이스의 요점은 동기화 메타 데이터를 추적하는 것입니다. 다른 복제본 (다른 앵커, 클라이언트 ID 등)을 원하면 다른 복제본으로 설정하십시오.

새로운 MSF 2.0, 특히 프로비저닝 및 관리 API를 살펴 보는 것이 좋습니다. 그들은 당신이 필요로하는 더 많은 유연성을 제공하는 것 같습니다. Sync Framework v2