次の方法で共有


PurgeTombstoneTableData メソッド

指定されたテーブルの廃棄データを削除します。

名前空間:  System.Data.SqlServerCe
アセンブリ:  System.Data.SqlServerCe (System.Data.SqlServerCe.dll)

構文

'宣言
Public Sub PurgeTombstoneTableData ( _
    tableName As String, _
    pType As PurgeType, _
    retentionValue As Long _
)
'使用
Dim instance As SqlCeChangeTracking
Dim tableName As String
Dim pType As PurgeType
Dim retentionValue As Long

instance.PurgeTombstoneTableData(tableName, _
    pType, retentionValue)
public void PurgeTombstoneTableData(
    string tableName,
    PurgeType pType,
    long retentionValue
)
public:
void PurgeTombstoneTableData(
    String^ tableName, 
    PurgeType pType, 
    long long retentionValue
)
member PurgeTombstoneTableData : 
        tableName:string * 
        pType:PurgeType * 
        retentionValue:int64 -> unit 
public function PurgeTombstoneTableData(
    tableName : String, 
    pType : PurgeType, 
    retentionValue : long
)

パラメーター

  • pType
    型: System.Data.SqlServerCe. . :: . .PurgeType
    パージが時間に基づくか、廃棄データを変更するための最後のトランザクションのコミット シーケンス番号 (CSN) に基づくかを指定する PurgeType の値のいずれかです。
  • retentionValue
    型: System. . :: . .Int64
    保持する廃棄行の最大数を指定する数値。時間に基づくパージの場合、パラメーターは廃棄データを保持する現在の日付からの日数を指定します。CSN に基づくパージの場合、パラメーターは廃棄データを保持する最後のトランザクションの CSN を指定します。

例外

例外 条件
ArgumentOutOfRangeException

retentionValue に 0 より小さい値が指定されています。

または

purgeType は有効な PurgeType の値ではありません。

説明

PurgeTombstoneTableData メソッドは、廃棄テーブル (__sysOCSDeletedRows) から行を削除 (パージ) します。追跡テーブルから行が削除されると、追跡インフラストラクチャは削除された行を廃棄テーブルに移動します。追跡インフラストラクチャはシステム内にあるすべての追跡テーブルで削除された行を廃棄テーブルに保持するため、廃棄テーブルは徐々に大きくなります。PurgeTombstoneTableData メソッドを使用し、定期的に廃棄テーブルから行をパージして、廃棄テーブルのサイズを制限することができます。

pType パラメーターを使用すると、2 種類のパージからいずれかを指定できます。

  • 時間に基づくパージ。時間に基づくパージの場合、retentionValue パラメーターは廃棄テーブルに行を保持する現在の日付からの日数を指定します。保持日付以降に削除された指定テーブルの行は、廃棄テーブル内に保持されます。保持日付より前に削除された行は、廃棄テーブルから削除されます。

  • CSN に基づくパージ。この種類のパージは、トランザクション ベースのパージとしても知られています。CSN に基づくパージの場合、retentionValue パラメーターは廃棄テーブルに行を保持する最後のトランザクションのトランザクション コミット シーケンス番号 (CSN) を指定します。指定した CSN 以上の CSN を持つトランザクションによって指定テーブルから削除された行は、廃棄テーブル内に保持されます。指定した CSN より小さい CSN を持つトランザクションによって削除された行は、廃棄テーブルから削除されます。データ ソースの現在の CSN (コミットする最後のトランザクションに割り当てられる CSN) は、GetLastCommittedCsn メソッドを呼び出すことによって取得できます。

    注意

    CSN は、コミット時にデータベースによって各トランザクション (データベースが参加している) に割り当てられる単純増加カウンターです。CSN は、データベースが参加してコミットされている他のトランザクションに関連して、各トランザクションがコミットされたシーケンスを一意に識別します。

時間に基づくパージと CSN に基づくパージを実行するうえでの違いについては、「PurgeType」を参照してください。

関連項目

参照

SqlCeChangeTracking クラス

SqlCeChangeTracking メンバー

System.Data.SqlServerCe 名前空間

PurgeType