SqlCeSyncStoreSnapshotInitialization.GenerateSnapshot 메서드
동기화를 위해 다른 SQL Server Compact 데이터베이스를 초기화하는 데 사용할 수 있는 기존 SQL Server Compact 데이터베이스 파일의 스냅숏을 생성합니다.
네임스페이스: Microsoft.Synchronization.Data.SqlServerCe
어셈블리: microsoft.synchronization.data.sqlserverce.dll의 Microsoft.Synchronization.Data.SqlServerCe
구문
‘선언
<SuppressMessageAttribute("Microsoft.Design", "CA1031:DoNotCatchGeneralExceptionTypes")> _
<SuppressMessageAttribute("Microsoft.Design", "CA1011:ConsiderPassingBaseTypesAsParameters")> _
Public Sub GenerateSnapshot ( _
sourceConnection As SqlCeConnection, _
destinationDatabasePath As String _
)
‘사용 방법
Dim instance As SqlCeSyncStoreSnapshotInitialization
Dim sourceConnection As SqlCeConnection
Dim destinationDatabasePath As String
instance.GenerateSnapshot(sourceConnection, destinationDatabasePath)
[SuppressMessageAttribute("Microsoft.Design", "CA1031:DoNotCatchGeneralExceptionTypes")]
[SuppressMessageAttribute("Microsoft.Design", "CA1011:ConsiderPassingBaseTypesAsParameters")]
public void GenerateSnapshot (
SqlCeConnection sourceConnection,
string destinationDatabasePath
)
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1031:DoNotCatchGeneralExceptionTypes")]
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1011:ConsiderPassingBaseTypesAsParameters")]
public:
void GenerateSnapshot (
SqlCeConnection^ sourceConnection,
String^ destinationDatabasePath
)
/** @attribute SuppressMessageAttribute("Microsoft.Design", "CA1031:DoNotCatchGeneralExceptionTypes") */
/** @attribute SuppressMessageAttribute("Microsoft.Design", "CA1011:ConsiderPassingBaseTypesAsParameters") */
public void GenerateSnapshot (
SqlCeConnection sourceConnection,
String destinationDatabasePath
)
SuppressMessageAttribute("Microsoft.Design", "CA1031:DoNotCatchGeneralExceptionTypes")
SuppressMessageAttribute("Microsoft.Design", "CA1011:ConsiderPassingBaseTypesAsParameters")
public function GenerateSnapshot (
sourceConnection : SqlCeConnection,
destinationDatabasePath : String
)
매개 변수
- sourceConnection
스냅숏을 생성할 데이터베이스에 대한 연결이 포함된 SqlCeConnection 개체입니다.
- destinationDatabasePath
스냅숏이 작성될 파일 경로입니다.
주의
스냅숏 초기화는 클라이언트 데이터베이스를 초기화하는 데 드는 시간을 줄이기 위해 디자인되었습니다. 전체 초기화를 사용하여 한 클라이언트 데이터베이스를 초기화한 후 이 처음 클라이언트 데이터베이스의 스냅숏을 사용하여 이후 데이터베이스를 초기화할 수 있습니다. 스냅숏은 테이블 스키마, 데이터(선택 사항) 및 변경 내용 추적 인프라를 포함하는 특별히 준비된 SQL Server Compact 데이터베이스입니다. 스냅숏이 필요한 각 클라이언트에 이 스냅숏을 복사합니다. 클라이언트에 대한 첫 번째 동기화 세션 동안 클라이언트 관련 메타데이터가 업데이트되고 스냅숏이 만들어진 이후 발생한 모든 변경 내용이 클라이언트 데이터베이스에 다운로드됩니다.
중요
스냅숏은 SQL Server Compact 데이터베이스에 작업이 없을 때만 생성해야 합니다. 스냅숏 생성 중에는 어떠한 형식의 작업도 동시에 실행할 수 없습니다.
예제
다음 코드 예제에서는 SyncSampleClient1.sdf
데이터베이스에서 SyncSampleClient2.sdf
라는 이름의 스냅숏을 생성합니다. 그런 다음 이 코드에서는 SyncSampleClient2.sdf
를 서버 데이터베이스와 동기화합니다. 전체 예제의 맥락에서 이 코드를 보려면 방법: 공동 작업 동기화 구성 및 실행(SQL Server)을 참조하십시오.
// Create a snapshot from the SQL Server Compact database, which will be used to
// initialize a second Compact database. Again, this database could be provisioned
// by retrieving scope information from another database, but we want to
// demonstrate the use of snapshots, which provide a convenient deployment
// mechanism for Compact databases.
SqlCeSyncStoreSnapshotInitialization syncStoreSnapshot = new SqlCeSyncStoreSnapshotInitialization("Sync");
syncStoreSnapshot.GenerateSnapshot(clientSqlCe1Conn, "SyncSampleClient2.sdf");
// The new SQL Server Compact client synchronizes with the server, but
// no data is downloaded because the snapshot already contains
// all of the data from the first Compact database.
syncOrchestrator = new SampleSyncOrchestrator(
new SqlSyncProvider("filtered_customer", serverConn, null, "Sync"),
new SqlCeSyncProvider("filtered_customer", clientSqlCe2Conn, "Sync")
);
syncStats = syncOrchestrator.Synchronize();
syncOrchestrator.DisplayStats(syncStats, "initial");
' Create a snapshot from the SQL Server Compact database, which will be used to
' initialize a second Compact database. Again, this database could be provisioned
' by retrieving scope information from another database, but we want to
' demonstrate the use of snapshots, which provide a convenient deployment
' mechanism for Compact databases.
Dim syncStoreSnapshot As New SqlCeSyncStoreSnapshotInitialization("Sync")
syncStoreSnapshot.GenerateSnapshot(clientSqlCe1Conn, "SyncSampleClient2.sdf")
' The new SQL Server Compact client synchronizes with the server, but
' no data is downloaded because the snapshot already contains
' all of the data from the first Compact database.
syncOrchestrator = New SampleSyncOrchestrator( _
New SqlSyncProvider("filtered_customer", serverConn, Nothing, "Sync"), _
New SqlCeSyncProvider("filtered_customer", clientSqlCe2Conn, "Sync"))
syncStats = syncOrchestrator.Synchronize()
syncOrchestrator.DisplayStats(syncStats, "initial")
참고 항목
참조
SqlCeSyncStoreSnapshotInitialization 클래스
SqlCeSyncStoreSnapshotInitialization 멤버
Microsoft.Synchronization.Data.SqlServerCe 네임스페이스