sp_helpmergepublication (Transact-SQL)
Возвращает данные о публикации слиянием. Эта хранимая процедура выполняется на издателе в базе данных публикации.
Синтаксические обозначения в Transact-SQL
Синтаксис
sp_helpmergepublication [ [ @publication = ] 'publication' ]
[ , [ @found = ] 'found' OUTPUT ]
[ , [ @publication_id = ] 'publication_id' OUTPUT ]
[ , [ @reserved = ] 'reserved' ]
[ , [ @publisher = ] 'publisher' ]
[ , [ @publisher_db = ] 'publisher_db' ]
Аргументы
[ @publication**=** ] 'publication'
Имя публикации. Аргумент publicationимеет тип sysname и значение по умолчанию %, при котором возвращаются сведения обо всех публикациях слиянием в текущей базе данных.[ @found**=** ] 'found' OUTPUT
Флаг для указания возвращаемых строк. Аргумент foundимеет тип int, параметр OUTPUT и значение по умолчанию NULL. Значение 1 показывает, что публикация найдена. Значение 0 показывает, что публикация не найдена.[ @publication\_id**=**\] **'**publication_id' OUTPUT
Идентификационный номер публикации. Аргумент publication_id имеет тип uniqueidentifier, параметр OUTPUT и значение по умолчанию NULL.[ @reserved**=**\] 'reserved'
Указано только в ознакомительных целях. Не поддерживается. Совместимость с будущими версиями не гарантируется. аргумент reserved имеет тип nvarchar(20) и значение по умолчанию NULL.[ @publisher**=** ] 'publisher'
Имя издателя. Аргумент publisher имеет тип sysname и значение по умолчанию NULL.[@publisher_db**=** ] 'publisher_db'
Имя базы данных публикации. Аргумент publisher_db имеет тип sysname и значение по умолчанию NULL.
Результирующие наборы
Имя столбца |
Тип данных |
Описание |
||
---|---|---|---|---|
id |
int |
Порядковый номер публикации в списке результирующего набора. |
||
name |
sysname |
Имя публикации. |
||
description |
nvarchar(255) |
Описание публикации. |
||
status |
tinyint |
Указывает, когда доступны данные публикации. |
||
retention |
int |
Количество времени, необходимое для сохранения метаданных об изменениях статей в публикации. Единицами измерения этого периода времени могут быть дни, недели, месяцы или года. Дополнительные сведения об единицах см. в столбце retention_period_unit. |
||
sync_mode |
tinyint |
Режим синхронизации этой публикации: 0 = собственная программа массового копирования (служебная программа bcp ) 1 = символьное массовое копирование. |
||
allow_push |
int |
Определяет, могут ли для данной публикации быть созданы принудительные подписки. Значение 0 означает, что создание принудительной подписки не разрешено. |
||
allow_pull |
int |
Определяет, могут ли для данной публикации быть созданы подписки по запросу. Значение 0 означает, что создание подписки по запросу не разрешено. |
||
allow_anonymous |
int |
Определяет, могут ли для данной публикации быть созданы анонимные подписки. Значение 0 означает, что создание анонимной подписки не разрешено. |
||
centralized_conflicts |
int |
Указывает, хранятся ли записи о конфликтах на данном издателе: 0 = записи о конфликтах хранятся как на издателе, так и на подписчике, вызвавшем конфликт; 1 = все записи о конфликтах хранятся на издателе. |
||
priority |
float(8) |
Приоритет подписки с замыканием на себя. |
||
snapshot_ready |
tinyint |
Указывает, готов ли моментальный снимок этой публикации: 0 = моментальный снимок готов к использованию; 1 = моментальный снимок не готов к использованию. |
||
publication_type |
int |
Тип публикации: 0 = публикация моментальных снимков; 1 = публикация транзакций; 2 = публикация слиянием. |
||
pubid |
uniqueidentifier |
Уникальный идентификатор этой публикации. |
||
snapshot_jobid |
binary(16) |
Идентификатор задания агента моментальных снимков. Для получения записи задания моментального снимка в системной таблице sysjobs необходимо преобразовать шестнадцатеричное значение в тип данных uniqueidentifier. |
||
enabled_for_internet |
int |
Указывает, разрешена ли публикация через Интернет. Если это значение равно 1, то файлы синхронизации для публикации помещаются в каталог C:\Program Files\Microsoft SQL Server\MSSQL\Repldata\Ftp. Пользователю необходимо создать каталог для протокола FTP. При значении 0 доступ к публикации через Интернет отключен. |
||
dynamic_filter |
int |
Указывает, используется ли параметризованный фильтр строк. Значение 0 означает, что параметризованный фильтр строк не используется. |
||
has_subscription |
bit |
Указывает, имеет ли публикация хотя бы одну подписку. Значение 0 означает, что на данный момент на эту публикацию подписок нет. |
||
snapshot_in_default_folder |
bit |
Указывает, хранятся ли файлы моментальных снимков в папке по умолчанию. Если значение равно 1, то файлы моментальных снимков находятся в папке по умолчанию. Если значение равно 0, то файлы моментальных снимков сохраняются в другом каталоге, на который указывает аргумент alt_snapshot_folder. Это место может находиться на другом сервере, на сетевом диске или на съемном носителе (например на CD-ROM или на съемном диске). Сохранить файлы моментальных снимков можно также на FTP сайте, чтобы подписчик мог впоследствии их загрузить.
|
||
alt_snapshot_folder |
nvarchar(255) |
Указывает местоположение альтернативной папки для моментального снимка. |
||
pre_snapshot_script |
nvarchar(255) |
Определяет указатель на .sql-файл, который агент слияния выполняет до запуска любых скриптов реплицируемых объектов при применении моментального снимка на подписчике. |
||
post_snapshot_script |
nvarchar(255) |
Определяет указатель на .sql-файл, который агент слияния выполняет после применения всех остальных скриптов и данных реплицируемых объектов во время начальной синхронизации. |
||
compress_snapshot |
bit |
Указывает, что моментальный снимок, сохраняемый в каталог alt_snapshot_folder, сжат в архив формата Microsoft CAB. |
||
ftp_address |
sysname |
Сетевой адрес службы FTP распространителя. Указывает расположение файлов моментальных снимков публикации, которые требуются агенту слияния. |
||
ftp_port |
int |
Номер порта службы FTP распространителя. Аргумент ftp_port по умолчанию имеет значение 21. Указывает расположение файлов моментальных снимков публикации, которые требуются агенту слияния. |
||
ftp_subdirectory |
nvarchar(255) |
Указывает расположение файлов моментальных снимков, которые требуются агенту слияния, если моментальный снимок доставляется при помощи FTP. |
||
ftp_login |
sysname |
Имя пользователя, используемое для подключения к службе FTP. |
||
conflict_retention |
int |
Указывает срок хранения конфликтных записей (в сутках). По истечении этого срока конфликтующая строка удаляется из таблицы конфликтов. |
||
keep_partition_changes |
int |
Указывает, осуществляется ли оптимизация синхронизации для этой публикации. Аргумент keep_partition_changes по умолчанию имеет значение 0. Значение 0 означает, что синхронизация не оптимизирована и отправленные всем подписчикам секции проверяются при изменении в них данных. Значение 1 означает, что синхронизация оптимизирована и в операции участвуют только те подписчики, которые имеют строки в измененной секции.
|
||
allow_subscription_copy |
int |
Указывает, разрешено ли копирование баз данных подписки, подписанных на данную публикацию. Значение 0 означает, что копирование не разрешено. |
||
allow_synctoalternate |
int |
Показывает, допустимо ли для данного издателя наличие альтернативного участника синхронизации. Значение 0 означает, что участник синхронизации не разрешен. |
||
validate_subscriber_info |
nvarchar(500) |
Выводит список функций, с помощью которых возвращаются сведения о подписчике, и проверяет правильность критериев параметризованной фильтрации строк на подписчике. Позволяет убедиться в том, что данные в каждом слиянии секционированы согласованным образом. |
||
backward_comp_level |
int |
Уровень совместимости базы данных. Может иметь одно из следующих значений: 90 = SQL Server 2005 90 = SQL Server 2005 с пакетом обновления 1 (SP1) 90 = SQL Server 2005 с пакетом обновления 2 (SP2) 100 = SQL Server 2008 |
||
publish_to_activedirectory |
bit |
Указывает, опубликованы ли сведения о публикации в Active Directory. Значение 0 означает, что сведения о публикации не могут быть получены от Active Directory. Этот аргумент является устаревшим и поддерживается только для обратной совместимости. Сведения о публикации больше не могут быть добавлены в Active Directory. |
||
max_concurrent_merge |
int |
Число параллельных процессов слияния. Если значение равно 0, то на число одновременно выполняемых процессов слияния никаких ограничений нет. |
||
max_concurrent_dynamic_snapshots |
int |
Максимальное количество параллельных сеансов моментальных снимков фильтрованных данных, которые могут выполняться для публикации слиянием. Если значение равно 0, то на максимальное число одновременно запущенных параллельных сеансов моментальных снимков фильтрованных данных для данной публикации ограничения отсутствуют. |
||
use_partition_groups |
int |
Определяет, используются ли предварительно вычисляемые секции. Значение 1 означает, что предварительно вычисляемые секции используются. |
||
num_of_articles |
int |
Количество статей в публикации. |
||
replicate_ddl |
int |
Указывает, реплицируются ли изменения схемы для опубликованных таблиц. Значение 1 означает, что изменения схемы реплицируются. |
||
publication_number |
smallint |
Номер, присвоенный этой публикации. |
||
allow_subscriber_initiated_snapshot |
bit |
Определяет, могут ли подписчики инициировать процесс создания моментальных снимков отфильтрованных данных. Значение 1 означает, что подписчики могут инициировать процесс формирования моментальных снимков. |
||
allow_web_synchronization |
bit |
Определяет, разрешена ли для публикации веб-синхронизация. Значение 1 указывает на то, что веб-синхронизация разрешена. |
||
web_synchronization_url |
nvarchar(500) |
URL-адрес в Интернете, используемый для веб-синхронизации. |
||
allow_partition_realignment |
bit |
Указывает, отсылаются ли подписчику операции удаления, когда изменение строки на издателе приводит к изменению секции. Значение 1 означает, что операции удаления отсылаются подписчику. Дополнительные сведения см. в разделе sp_addmergepublication (Transact-SQL). |
||
retention_period_unit |
tinyint |
Определяет единицу измерения для указания срока хранения. Может иметь одно из следующих значений: 0 = день 1 = неделя 2 = месяц 3 = год |
||
has_downloadonly_articles |
bit |
Указывает, являются ли какие-либо из статей публикации статьями, предназначенными только для загрузки. Значение 1 означает, что в публикации есть статьи, предназначенные только для загрузки. |
||
decentralized_conflicts |
int |
Указывает, сохраняются ли на подписчике записи, вызвавшие конфликт. Значение 0 означает, что записи, вызвавшие конфликтную ситуацию, на подписчике не сохраняются. Значение 1 означает, что записи, вызвавшие конфликтную ситуацию, сохраняются на подписчике. |
||
generation_leveling_threshold |
int |
Задает число изменений, которые содержатся в поколении. Поколение — это набор изменений, переданных издателю или подписчику |
||
automatic_reinitialization_policy |
bit |
Указывает, передаются ли изменения с подписчика перед автоматической повторной инициализацией. Значение 1 означает, что изменения передаются с подписчика перед автоматической повторной инициализацией. Значение 0 означает, что изменения не передаются перед автоматической повторной инициализацией. |
Значения кодов возврата
0 (успешное завершение) или 1 (неуспешное завершение)
Замечания
Процедура sp_helpmergepublication используется в репликации слиянием.
Разрешения
Члены списка доступа к публикациям могут выполнять процедуру sp_helpmergepublication для этой публикации. Члены предопределенной роли базы данных db_owner в базе данных публикации могут выполнять хранимую процедуру sp_helpmergepublication для получения сведений обо всех публикациях.
Пример
DECLARE @publication AS sysname;
SET @publication = N'AdvWorksSalesOrdersMerge';
USE [AdventureWorks2012]
EXEC sp_helpmergepublication @publication = @publication;
GO
См. также
Справочник
sp_addmergepublication (Transact-SQL)
sp_changemergepublication (Transact-SQL)
sp_dropmergepublication (Transact-SQL)
Хранимые процедуры репликации (Transact-SQL)