sp_changemergefilter (Transact-SQL)

Область применения: yesSQL Server (все поддерживаемые версии)

Изменяет некоторые свойства фильтра слияния. Эта хранимая процедура выполняется на издателе в базе данных публикации.

Topic link iconСинтаксические обозначения в Transact-SQL

Синтаксис

  
sp_changemergefilter [ @publication= ] 'publication'  
        , [ @article= ] 'article'  
        , [ @filtername= ] 'filtername'  
        , [ @property= ] 'property'  
        , [ @value= ] 'value'  
    [ , [ @force_invalidate_snapshot = ] force_invalidate_snapshot ]  
    [ , [ @force_reinit_subscription = ] force_reinit_subscription ]  

Аргументы

[ @publication = ] 'publication' Имя публикации. publicationsysname без значения по умолчанию.

[ @article = ] 'article' Имя статьи. Articlesysname без значения по умолчанию.

[ @filtername = ] 'filtername' Текущее имя фильтра. filternamesysname без значения по умолчанию.

[ @property = ] 'property' Имя изменяемого свойства. свойствоsysname без значения по умолчанию.

[ @value = ] 'value' Новое значение для указанного свойства. значениеnvarchar(1000) без значения по умолчанию.

Эта таблица описывает свойства статей и значения этих свойств.

Свойство Значение Описание
filter_type 1 Фильтр соединения.

Этот параметр необходим для поддержки подписчиков SQL Server Compact.
2 Связь логических записей.
3 Фильтр соединения также является связью логических записей.
filtername Имя фильтра.
join_articlename Имя статьи соединения.
join_filterclause Предложение фильтра.
join_unique_key true Соединение находится в уникальном ключе.
false Соединение не находится в уникальном ключе.

[ @force_invalidate_snapshot = ] force_invalidate_snapshot Подтверждает, что действие, выполняемое этой хранимой процедурой, может сделать недействительным существующий моментальный снимок. force_invalidate_snapshotнемного, сзначением по умолчанию 0.

0 указывает, что изменения статьи слияния не приводят к тому, что моментальный снимок будет недействительным. Если хранимая процедура определяет, что изменение требует создания нового моментального снимка, возникает ошибка и изменения не выполняются.

1 означает, что изменения статьи слиянием могут привести к тому, что моментальный снимок будет недействительным, и если существуют существующие подписки, для которых требуется новый моментальный снимок, дает разрешение на добавление существующего моментального снимка как устаревшего и создания нового моментального снимка.

[ @force_reinit_subscription = ] force_reinit_subscription Подтверждает, что действие, выполняемое этой хранимой процедурой, может потребовать повторной инициализации существующих подписок. force_reinit_subscriptionбит с значением по умолчанию 0.

0 указывает, что изменения статьи слияния не приводят к повторной инициализации подписки. Если хранимая процедура определяет, что изменения потребуют повторной инициализации подписок, возникает ошибка, и изменения не выполняются.

1 означает, что изменения в статье слиянием приведут к повторной инициализации существующих подписок и дают разрешение на повторную инициализацию подписки.

Значения кода возврата

0 (успешно) или 1 (сбой)

Remarks

sp_changemergefilter используется в репликации слиянием.

Изменения фильтра для статьи слияния требует создания моментального снимка; если таковой уже существует, необходимо его повторное создание. Для этого необходимо задать для @force_invalidate_snapshot значение 1. Кроме того, если на статью имеются подписки, то необходима их повторная инициализация. Для этого необходимо задать для @force_reinit_subscriptionзначение 1.

Для использования логических записей публикация и статьи должны удовлетворять определенным требованиям. Дополнительные сведения см. в статье Группирование изменений в связанных строках с помощью логических записей.

Разрешения

Только члены предопределенной роли сервера sysadmin или db_owner предопределенной роли базы данных могут выполнять sp_changemergefilter.

См. также

Изменение свойств публикации и статьи
sp_addmergefilter (Transact-SQL)
sp_dropmergefilter (Transact-SQL)
Хранимая процедура sp_helpmergefilter (Transact-SQL)
Системные хранимые процедуры (Transact-SQL)