TableCreationOption 열거형
클라이언트 데이터베이스에 테이블을 만들 때 사용할 수 있는 옵션을 정의합니다.
네임스페이스: Microsoft.Synchronization.Data
어셈블리: microsoft.synchronization.data.dll의 Microsoft.Synchronization.Data
구문
‘선언
Public Enumeration TableCreationOption
‘사용 방법
Dim instance As TableCreationOption
public enum TableCreationOption
public enum class TableCreationOption
public enum TableCreationOption
public enum TableCreationOption
멤버
멤버 이름 | 설명 | |
---|---|---|
CreateNewTableOrFail | 클라이언트 데이터베이스에 테이블을 만듭니다. 이름이 기존 테이블과 같을 경우 예외를 throw합니다. | |
DropExistingOrCreateNewTable | 클라이언트 데이터베이스에 테이블을 만듭니다. 이름이 기존 테이블과 같을 경우 먼저 기존 테이블을 삭제합니다. | |
TruncateExistingOrCreateNewTable | 테이블이 없을 경우 클라이언트 데이터베이스에 테이블을 만듭니다. 이름이 기존 테이블과 같을 경우 이 테이블에서 모든 행을 삭제합니다. | |
UploadExistingOrCreateNewTable | 테이블이 없을 경우 클라이언트 데이터베이스에 테이블을 만듭니다. 이름이 기존 테이블과 같을 경우 첫 번째 동기화 시 이 테이블에서 모든 행을 업로드합니다. 이 옵션은 SyncDirection이 Bidirectional 또는 UploadOnly인 경우에만 사용할 수 있습니다. | |
UseExistingTableOrFail | 클라이언트 데이터베이스에 이름이 같은 기존 테이블이 있는 경우 해당 테이블을 사용합니다. 이러한 테이블이 없는 경우 예외를 throw합니다. |
주의
TableCreationOption 속성은 특히 클라이언트 데이터베이스에 동일한 이름의 기존 테이블이 있는 경우 클라이언트 데이터베이스에서 테이블 생성을 처리하는 방법을 결정합니다. 자세한 내용은 방법: 클라이언트 데이터베이스 초기화 및 테이블 스키마 사용을 참조하십시오.
예제
다음 코드 예제는 SyncAgent에서 파생된 클래스에서 제공된 것입니다. 이 코드에서는 두 가지 동기화 그룹과 세 가지 동기화 테이블을 만듭니다. Customer
테이블은 Customer
그룹에 추가되고 OrderHeader
및 OrderDetail
테이블은 Order
그룹에 추가됩니다. 모든 테이블은 다운로드 전용입니다. 테이블이 클라이언트에 있으면 초기 동기화 중에 테이블이 삭제되고 다시 만들어집니다. 전체 예제의 맥락에서 이 코드를 보려면 방법: 행 및 열 필터링을 참조하십시오.
//Create two SyncGroups so that changes to OrderHeader
//and OrderDetail are made in one transaction. Depending on
//application requirements, you might include Customer
//in the same group.
SyncGroup customerSyncGroup = new SyncGroup("Customer");
SyncGroup orderSyncGroup = new SyncGroup("Order");
//Add each table: specify a synchronization direction of
//DownloadOnly.
SyncTable customerSyncTable = new SyncTable("Customer");
customerSyncTable.CreationOption = TableCreationOption.DropExistingOrCreateNewTable;
customerSyncTable.SyncDirection = SyncDirection.DownloadOnly;
customerSyncTable.SyncGroup = customerSyncGroup;
this.Configuration.SyncTables.Add(customerSyncTable);
SyncTable orderHeaderSyncTable = new SyncTable("OrderHeader");
orderHeaderSyncTable.CreationOption = TableCreationOption.DropExistingOrCreateNewTable;
orderHeaderSyncTable.SyncDirection = SyncDirection.DownloadOnly;
orderHeaderSyncTable.SyncGroup = orderSyncGroup;
this.Configuration.SyncTables.Add(orderHeaderSyncTable);
SyncTable orderDetailSyncTable = new SyncTable("OrderDetail");
orderDetailSyncTable.CreationOption = TableCreationOption.DropExistingOrCreateNewTable;
orderDetailSyncTable.SyncDirection = SyncDirection.DownloadOnly;
orderDetailSyncTable.SyncGroup = orderSyncGroup;
this.Configuration.SyncTables.Add(orderDetailSyncTable);
'Create two SyncGroups so that changes to OrderHeader
'and OrderDetail are made in one transaction. Depending on
'application requirements, you might include Customer
'in the same group.
Dim customerSyncGroup As New SyncGroup("Customer")
Dim orderSyncGroup As New SyncGroup("Order")
'Add each table: specify a synchronization direction of
'DownloadOnly.
Dim customerSyncTable As New SyncTable("Customer")
customerSyncTable.CreationOption = TableCreationOption.DropExistingOrCreateNewTable
customerSyncTable.SyncDirection = SyncDirection.DownloadOnly
customerSyncTable.SyncGroup = customerSyncGroup
Me.Configuration.SyncTables.Add(customerSyncTable)
Dim orderHeaderSyncTable As New SyncTable("OrderHeader")
orderHeaderSyncTable.CreationOption = TableCreationOption.DropExistingOrCreateNewTable
orderHeaderSyncTable.SyncDirection = SyncDirection.DownloadOnly
orderHeaderSyncTable.SyncGroup = orderSyncGroup
Me.Configuration.SyncTables.Add(orderHeaderSyncTable)
Dim orderDetailSyncTable As New SyncTable("OrderDetail")
orderDetailSyncTable.CreationOption = TableCreationOption.DropExistingOrCreateNewTable
orderDetailSyncTable.SyncDirection = SyncDirection.DownloadOnly
orderDetailSyncTable.SyncGroup = orderSyncGroup
Me.Configuration.SyncTables.Add(orderDetailSyncTable)