sp_helpmergesubscription (Transact-SQL)
Возвращает сведения о подписке на публикацию слиянием (как принудительной, так и по запросу). Эта хранимая процедура выполняется на издателе в базе данных публикации или на переиздаваемом подписчике для базы данных подписки.
Синтаксис
sp_helpmergesubscription [ [ @publication=] 'publication']
[ , [ @subscriber=] 'subscriber']
[ , [ @subscriber_db=] 'subscriber_db']
[ , [ @publisher=] 'publisher']
[ , [ @publisher_db=] 'publisher_db']
[ , [ @subscription_type=] 'subscription_type']
[ , [ @found=] 'found' OUTPUT]
Аргументы
[ @publication=] 'publication'
Имя публикации. Аргумент publication имеет тип sysname и значение по умолчанию %. Публикация уже должна существовать и соответствовать правилам идентификаторов. Если этот аргумент равен NULL или %, возвращаются сведения обо всех публикациях слиянием и подписках в текущей базе данных.[ @subscriber=] 'subscriber'
Имя подписчика. Аргумент subscriber имеет тип sysname и значение по умолчанию %. Если этот аргумент равен NULL или %, возвращаются сведения обо всех подписках данной публикации.[ @subscriber_db=] 'subscriber_db'
Имя базы данных подписки. Аргумент subscriber_db имеет тип sysname и значение по умолчанию %, которое возвращает все базы данных подписок.[ @publisher=] 'publisher'
Имя издателя. Издатель должен быть действительным сервером. Аргумент publisher имеет тип sysname и значение по умолчанию %, которое возвращает сведения обо всех издателях.[ @publisher_db=] 'publisher_db'
Имя базы данных издателя. Аргумент publisher_db имеет тип sysname и значение по умолчанию %, которое возвращает сведения обо всех базах данных издателя.[ @subscription_type=] 'subscription_type'
Тип подписки. Аргумент subscription_type имеет тип nvarchar(15) и одно из следующих значений.Значение
Описание
push (по умолчанию)
Принудительная подписка.
pull
Подписка по запросу.
both
Обе подписки: по запросу и принудительная подписка.
[ @found=] 'found'OUTPUT
Флаг для идентификации возвращаемых строк. Аргумент found имеет тип int, параметр OUTPUT и значение по умолчанию NULL. Значение 1 показывает, что публикация найдена. Значение 0 показывает, что публикация не найдена.
Результирующие наборы
Имя столбца |
Тип данных |
Описание |
---|---|---|
subscription_name |
sysname |
Имя подписки. |
publication |
sysname |
Имя публикации. |
publisher |
sysname |
Имя издателя. |
publisher_db |
sysname |
Имя базы данных издателя. |
subscriber |
sysname |
Имя подписчика. |
subscriber_db |
sysname |
Имя базы данных подписки. |
status |
int |
Состояние подписки. 0 = все задания ожидают запуска. 1 = одно или более заданий запускаются. 2 = все задания выполнены успешно. 3 = по крайней мере одно задание выполняется. 4 = все задания стоят в очереди на выполнение по расписанию и бездействуют. 5 = по крайней мере одно задание производит попытку запуска после предыдущего сбоя. 6 = по крайней мере одно задание завершилось неудачно. |
subscriber_type |
int |
Тип подписчика. |
subscription_type |
int |
Тип подписки: 0 = принудительный. 1 = по запросу. 2 = оба типа. |
priority |
float(8) |
Число, показывающее приоритет подписки. |
sync_type |
tinyint |
Тип синхронизации подписки. |
description |
nvarchar(255) |
Короткое описание данной подписки слиянием. |
merge_jobid |
binary(16) |
Идентификатор задания агента слияния. |
full_publication |
tinyint |
Подписка к полной или фильтрованной публикации. |
offload_enabled |
bit |
Указывает, установлено ли на запуск выполнение разгрузки агента репликации на подписчике. Если равно NULL, выполняется на издателе. |
offload_server |
sysname |
Имя сервера, на который запущен агент. |
use_interactive_resolver |
int |
Возвращает сведения о том, был ли использован интерактивный арбитр конфликтов во время взаимодействия. Если равно 0, интерактивный арбитр конфликтов не используется. |
hostname |
sysname |
Значение задается, если подписка фильтруется по значению функции HOST_NAME. |
subscriber_security_mode |
smallint |
Режим безопасности на подписчике, где 1 означает проверку подлинности Windows, а 0 означает проверку подлинности Microsoft SQL Server. |
subscriber_login |
sysname |
Имя входа на подписчике. |
subscriber_password |
sysname |
Настоящий пароль подписчика никогда не возвращается. Результат скрывается строкой «******». |
Значения кодов возврата
0 (успешное завершение) или 1 (неуспешное завершение)
Замечания
Процедура sp_helpmergesubscription используется в репликации слиянием для возвращения сведений о подписке, которые хранятся на издателе, или для повторной публикации подписчика.
Для анонимных подписок значение столбца subscription_type всегда равно 1 (по запросу). Однако необходимо выполнить sp_helpmergepullsubscription на подписчике для получения сведений по анонимным подпискам.
Разрешения
Только члены предопределенной роли сервера sysadmin, предопределенной роли базы данных db_owner или находящиеся в списке доступа публикации могут выполнять процедуру sp_helpmergesubscription.