サブスクリプションの有効期限を設定する方法 (レプリケーション Transact-SQL プログラミング)
サブスクリプションの期限が切れて削除されるまでの時間は、サブスクリプションの有効期限 (保有期間) によって決定されます。詳細については、「サブスクリプションの有効期限と非アクティブ化」を参照してください。この値は、レプリケーションのストアド プロシージャを使用して、パブリケーションの作成時に設定することも、後で変更することもできます。
スナップショットまたはトランザクション パブリケーションのサブスクリプションに対して有効期限を設定するには
- パブリッシャで sp_addpublication を実行します。@retention にサブスクリプションの有効期限を時間単位で指定します。既定の有効期限は 336 時間です。詳細については、「パブリケーションを作成する方法 (レプリケーション Transact-SQL プログラミング)」を参照してください。
マージ パブリケーションのサブスクリプションに対して有効期限を設定するには
パブリッシャで sp_addmergepublication を実行します。@retention にサブスクリプションの有効期限を指定します。@retention_period_unit に有効期限の単位を指定します。指定できる値は次のいずれかです。
- 1 = 週
- 2 = 月
- 3 = 年
既定の有効期限は 14 日です。詳細については、「パブリケーションを作成する方法 (レプリケーション Transact-SQL プログラミング)」を参照してください。
スナップショットまたはトランザクション パブリケーションのサブスクリプションに対して有効期限を変更するには
- パブリッシャで sp_changepublication を実行します。@property に retention を、@value にサブスクリプションの新しい有効期限を時間単位で指定します。
マージ パブリケーションのサブスクリプションに対して有効期限を変更するには
パブリッシャで sp_helpmergepublication を実行します。引数には @publication と @publisher を指定します。結果セットの retention_period_unit の値 (次のいずれか) を確認します。
- 0 = 日
- 1 = 週
- 2 = 月
- 3 = 年
パブリッシャで sp_changemergepublication を実行します。@property に retention を指定します。また、@value には、手順 1. の保有期間の単位に基づいて、サブスクリプションの新しい有効期限をテキストで指定します。
(省略可) パブリッシャで sp_changemergepublication を実行します。@property に retention_period_unit を、@value には、サブスクリプション有効期限に使用する新しい単位を指定します。
参照
処理手順
パブリケーションを作成する方法 (レプリケーション Transact-SQL プログラミング)
概念
システム ストアド プロシージャを使用したレプリケーションのプログラミング