다음을 통해 공유


PurgeTransactionSequenceData 메서드

트랜잭션 기록 테이블에서 지정된 데이터를 제거합니다.

네임스페이스:  System.Data.SqlServerCe
어셈블리:  System.Data.SqlServerCe.dll의 System.Data.SqlServerCe

구문

‘선언
Public Sub PurgeTransactionSequenceData ( _
    pType As PurgeType, _
    retentionValue As Long _
)
‘사용 방법
Dim instance As SqlCeChangeTracking
Dim pType As PurgeType
Dim retentionValue As Long

instance.PurgeTransactionSequenceData(pType, _
    retentionValue)
public void PurgeTransactionSequenceData(
    PurgeType pType,
    long retentionValue
)
public:
void PurgeTransactionSequenceData(
    PurgeType pType, 
    long long retentionValue
)
member PurgeTransactionSequenceData : 
        pType:PurgeType * 
        retentionValue:int64 -> unit 
public function PurgeTransactionSequenceData(
    pType : PurgeType, 
    retentionValue : long
)

매개 변수

  • pType
    형식: System.Data.SqlServerCe. . :: . .PurgeType
    제거가 트랜잭션 기록 데이터를 마지막으로 수정하는 트랜잭션의 CSN(커밋 시퀀스 번호)을 기반으로 하는지 시간을 기반으로 하는지 여부를 지정하는 PurgeType 값 중 하나입니다.
  • retentionValue
    형식: System. . :: . .Int64
    행이 유지되어야 하는 최대 제한을 지정하는 숫자입니다. 시간 기반 제거의 경우 매개 변수는 현재 날짜를 기준으로 트랜잭션 기록 데이터를 유지할 일 수를 지정합니다. CSN 기반 제거의 경우 매개 변수는 트랜잭션 기록 데이터를 유지할 마지막 트랜잭션의 CSN을 지정합니다.

예외

예외 조건
ArgumentOutOfRangeException

retentionValue가 0보다 작은 경우

-또는-

purgeType이 올바른 PurgeType 값이 아닌 경우

주의

트랜잭션이 커밋될 때 트랜잭션과 관련된 추적 정보가 포함된 항목이 트랜잭션 기록 테이블(__sysTxCommitSequence)에 만들어집니다. 해당 응용 프로그램에 더 이상 관련되지 않는 트랜잭션의 행을 삭제하여 이 테이블의 크기를 제한할 수 있습니다.

pType 매개 변수를 사용하여 다음 두 가지 제거 유형 중 하나를 지정할 수 있습니다.

  • 시간 기반 제거. 시간 기반 제거의 경우 retentionValue 매개 변수는 현재 날짜를 기준으로 행이 트랜잭션 기록 테이블에 유지되는 일 수를 지정합니다. 보존 날짜나 그 이후에 수정된 행은 모두 유지되고 보존 날짜 이전에 수정된 행은 모두 삭제됩니다.

  • CSN 기반 제거. 이 유형의 제거는 트랜잭션 기반 제거라고도 합니다. CSN 기반 제거의 경우 retentionValue 매개 변수는 트랜잭션 기록 테이블에 행을 유지할 마지막 트랜잭션의 CSN(커밋 시퀀스 번호)을 지정합니다. CSN이 지정된 CSN보다 크거나 같은 트랜잭션에 의해 마지막으로 수정된 행은 유지되고, CSN이 지정된 CSN보다 작은 트랜잭션에 의해 마지막으로 수정된 행은 삭제됩니다. GetLastCommittedCsn 메서드를 호출하여 데이터 원본의 현재 CSN(마지막으로 커밋할 트랜잭션에 할당된 CSN)을 가져올 수 있습니다.

    참고

    CSN은 트랜잭션이 커밋될 때 데이터베이스가 참여하는 각 트랜잭션에 할당하는 단순하게 증가하는 카운터입니다. CSN은 데이터베이스가 참여한 커밋된 다른 트랜잭션에 상대적으로 각 트랜잭션이 커밋된 시퀀스를 고유하게 식별합니다.

시간 기반 제거와 CSN 기반 제거의 차이점에 대한 자세한 내용은 PurgeType 열거형에 대한 항목을 참조하십시오.

참고 항목

참조

SqlCeChangeTracking 클래스

SqlCeChangeTracking 멤버

System.Data.SqlServerCe 네임스페이스

PurgeType

GetLastCommittedCsn