Dela via


sp_enumeratependingschemachanges (Transact-SQL)

Returns a list of all pending schema changes. This stored procedure can be used with sp_markpendingschemachange, which enables an administrator to skip selected pending schema changes so that they are not replicated. This stored procedure is executed at the Publisher on the publication database.

Topic link iconTransact-SQL Syntax Conventions

Syntax

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

Arguments

  • [ @publication= ] 'publication'
    Is the name of the publication. publication is sysname, with no default.

  • [ @starting_schemaversion= ] starting_schemaversion
    Is the lowest number schema change to include in the result set.

Result Set

Column name

Data type

Description

article_name

sysname

Name of the article to which the schema change applies, or Publication-wide for schema changes that apply to the entire publication.

schemaversion

int

Number of the pending schema change.

schematype

sysname

A text value that represents the type of schema change.

schematext

nvarchar(max)

Transact-SQL that describes the schema change.

schemastatus

nvarchar(10)

Indicates if a schema change is pending for the article, which can be one of the following values:

active = schema change is pending

inactive = schema change is inactive

skip = schema change is not replicated

schemaguid

uniqueidentifier

Identifies the schema change.

Return Code Values

0 (success) or 1 (failure)

Remarks

sp_enumeratependingschemachanges is used in merge replication.

sp_enumeratependingschemachanges, used with sp_markpendingschemachange, is intended for the supportability of merge replication and should be used only when other corrective actions, such as reinitialization, have failed to correct the situation.

Permissions

Only members of the sysadmin fixed server role or db_owner fixed database role can execute sp_enumeratependingschemachanges.