sp_markpendingschemachange (Transact-SQL)

選択した保留中のスキーマ変更がレプリケートされないように、管理者がそのスキーマ変更をスキップできるようにします。これは、マージ パブリケーションをサポートするための操作です。このストアド プロシージャは、パブリッシャ側でパブリケーション データベースについて実行されます。

注記注意

このストアド プロシージャによって、スキーマ変更がレプリケートされなくなる可能性があります。このストアド プロシージャを使用して問題を解決するのは、再初期化などの他の手段を既に試した場合、またはそれらの手段によるパフォーマンスのコストが高すぎる場合に限定してください。

構文

sp_markpendingschemachange [@publication = ] 'publication'
    [ , [ @schemaversion = ] schemaversion ]
    [ , [ @status = ] 'status' ]

引数

  • [@publication= ] 'publication'
    パブリケーションの名前を指定します。publication のデータ型は sysname で、既定値はありません。

  • [ @schemaversion= ] schemaversion
    保留中のスキーマ変更を指定します。schemaversion のデータ型は int で、既定値は 0 です。sp_enumeratependingschemachanges (Transact-SQL) を使用すると、パブリケーションの保留中のスキーマ変更が一覧表示されます。

  • [ @status= ] 'status'
    保留中のスキーマ変更をスキップするかどうかを指定します。status のデータ型は nvarchar(10) で、既定値は active です。status の値が skipped である場合は、選択したスキーマ変更がレプリケートされません。

戻り値

0 (成功) または 1 (失敗)

説明

sp_markpendingschemachange は、マージ レプリケーションで使用されます。

sp_markpendingschemachange は、マージ レプリケーションをサポートするためのストアド プロシージャであり、再初期化などの他の修正操作で状況を是正できなかった場合、またはそれらの操作によるパフォーマンスのコストが高すぎる場合にのみ使用してください。

権限

sp_markpendingschemachange を実行できるのは、sysadmin 固定サーバー ロールまたは db_owner 固定データベース ロールのメンバだけです。