Specifies columns used in an article. Use sp_articlecolumn to filter the data in a table vertically. This stored procedure is executed at the Publisher on the publication database.
sp_articlecolumn [ @publication = ] 'publication'
, [ @article = ] 'article'
[ , [ @column = ] 'column' ]
[ , [ @operation = ] 'operation' ]
[ , [ @refresh_synctran_procs = ] refresh_synctran_procs ]
[ , [ @ignore_distributor = ] ignore_distributor ]
[ , [ @change_active = ] change_actve ]
[ , [ @force_invalidate_snapshot = ] force_invalidate_snapshot ]
[ , [ @force_reinit_subscription = ] force_reinit_subscription ]
[@publication =] 'publication'
Is the name of the publication that contains this article. publication is sysname, with no default.
[@article =] 'article'
Is the name of the article. article is sysname, with no default.
[@column =] 'column'
Is the name of the column to be added or dropped. column is sysname, with a default of NULL. If NULL, all columns are published.
[@operation =] 'operation'
Is the replication status. operation is nvarchar(4), with a default of add. add marks the column for replication. drop unmarks the column.
[@refresh_synctran_procs =] refresh_synctran_procs
Specifies whether to add or drop columns in an article. refresh_synctran_procs is bit, with a default of 1. If 1, the stored procedures supporting synchronous transactions are regenerated to match the number of columns replicated.
[@ignore_distributor =] ignore_distributor
Indicates if this stored procedure executes without connecting to the Distributor. ignore_distributor is bit, with a default of 0. If 0, the database must be enabled for publishing, and the article cache should be refreshed to reflect the new columns replicated by the article. If 1, allows article columns to be dropped for articles that reside in an unpublished database; should be used only in recovery situations.
[@change_active = ] change_active
Allows modifying the columns in publications that have subscriptions. change_active is an int with a default of 0. If 0, columns will not be modified. If 1, columns can be added or dropped from active articles that have subscriptions.
[@force_invalidate_snapshot = ] force_invalidate_snapshot
Acknowledges that the action taken by this stored procedure may invalidate an existing snapshot. force_invalidate_snapshot is a bit, with a default of 0. 0 specifies that changes to the article will not cause the snapshot to be invalid. If the stored procedure detects that the change does require a new snapshot, an error will occur and no changes will be made. 1 specifies that changes to the article may cause the snapshot to be invalid, and if there are existing subscriptions that would require a new snapshot, gives permission for the existing snapshot to be marked as obsolete and a new snapshot generated.
[@force_reinit_subscription = ] force_reinit_subscription
Acknowledges that the action taken by this stored procedure may require existing subscriptions to be reinitialized. force_reinit_subscription is a bit, with a default of 0. 0 specifies that changes to the article will not cause the subscription to be reinitialized. If the stored procedure detects that the change would require subscriptions to be reinitialized, an error will occur and no changes will be made. 1 specifies that changes to the article will cause existing subscriptions to be reinitialized, and gives permission for the subscription reinitialization to occur.
Return Code Values
0 (success) or 1 (failure)
sp_articlecolumn is used in snapshot replication and transactional replication.
sp_articlecolumn sets a bit in sysarticles. Only an unsubscribed article can be filtered using sp_articlecolumn.
Only members of the sysadmin fixed server role or db_owner fixed database role can execute sp_articlecolumn.