次の方法で共有


sp_enumeratependingschemachanges (Transact-SQL)

適用対象: SQL Server

保留中のすべてのスキーマ変更に関する一覧を返します。 このストアド プロシージャは、 sp_markpendingschemachangeと共に使用できます。これにより、管理者は、選択した保留中のスキーマ変更をスキップして、レプリケートされないようにすることができます。 このストアド プロシージャは、パブリッシャー側のパブリケーション データベースで実行されます。

Transact-SQL 構文表記規則

構文

sp_enumeratependingschemachanges
    [ @publication = ] N'publication'
    [ , [ @starting_schemaversion = ] starting_schemaversion ]
[ ; ]

引数

[ @publication = ] N'publication'

出版物の名前。 @publicationsysname で、既定値はありません。

[ @starting_schemaversion = ] starting_schemaversion

結果セットに含める最小数のスキーマ変更。 @starting_schemaversionint で、既定値は 0 です。

結果セット

列名 データ型 説明
article_name sysname スキーマ変更が適用されるアーティクルの名前、またはパブリケーション全体に適用されるスキーマ変更の Publication-wide
schemaversion int 保留中のスキーマ変更の数。
schematype sysname スキーマ変更の種類を表すテキスト値。
schematext nvarchar(max) スキーマの変更を記述する Transact-SQL。
schemastatus nvarchar(10) スキーマ変更がアーティクルに対して保留になっているかどうかを示します。次のいずれかの値をとります。

active = スキーマの変更が保留中です
inactive = スキーマの変更が非アクティブである
skip = スキーマの変更がレプリケートされない
schemaguid uniqueidentifier スキーマの変更を識別します。

リターン コードの値

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

解説

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

sp_enumeratependingschemachangessp_markpendingschemachangeと共に使用され、マージ レプリケーションのサポートを目的としており、再初期化などの他の修正アクションが状況を修正できない場合にのみ使用する必要があります。

アクセス許可

sysadmin固定サーバー ロールまたは固定データベース ロールdb_ownerのメンバーのみがsp_enumeratependingschemachangesを実行できます。