Поделиться через


sp_helppublication (Transact-SQL)

Возвращает сведения о публикации. В публикации Microsoft SQL Server эта хранимая процедура выполняется в базе данных публикации на издателе. В публикации Oracle эта хранимая процедура выполняется в распространителе для любой базы данных.

Значок ссылки на раздел Синтаксические обозначения в Transact-SQL

Синтаксис

sp_helppublication [ [ @publication = ] 'publication' ]
    [ , [ @found=] found OUTPUT]
    [ , [ @publisher = ] 'publisher' ]

Аргументы

  • [@publication =] 'publication'
    Имя просматриваемой публикации. Аргумент publication имеет тип sysname и значение по умолчанию %, при котором возвращаются сведения обо всех публикациях.

  • [ @found = ] 'found' OUTPUT
    Флаг для указания возвращаемых строк. Аргумент foundимеет тип int, параметр OUTPUT и значение по умолчанию 23456. Значение 1 показывает, что публикация найдена. Значение 0 показывает, что публикация не найдена.

  • [ @publisher = ] 'publisher'
    Задает издателя, отличного от SQL Server. Аргумент publisher имеет тип sysname и значение по умолчанию NULL.

    ПримечаниеПримечание

    Аргумент publisher не следует указывать при запросе сведений о публикации на издателе SQL Server.

Результирующие наборы

Имя столбца

Тип данных

Описание

pubid

int

Идентификатор публикации.

name

sysname

Имя публикации.

restricted

int

Указано только в ознакомительных целях. Не поддерживается. Совместимость с будущими версиями не гарантируется.

status

tinyint

Текущее состояние публикации.

0 = неактивна;

1 = активна.

task

 

Используется для обратной совместимости.

replication frequency

tinyint

Тип частоты репликации:

0 = публикация транзакций;

1 = публикация моментальных снимков.

synchronization method

tinyint

Режим синхронизации:

0 = собственная программа массового копирования (служебная программа bcp).

1 = символьное массовое копирование;

3 = параллельный режим, то есть используется собственная программа массового копирования (служебная программа bcp), но таблицы во время создания моментального снимка не блокируются.

4 = Concurrent_c, то есть применяется символьное массовое копирование, но во время создания моментального снимка таблицы не фиксируются.

description

nvarchar(255)

Дополнительное описание публикации.

immediate_sync

bit

Указывает, выполняется ли создание (повторное создание) файлов синхронизации при каждом запуске агента моментальных снимков.

enabled_for_internet

bit

Указывает доступность файлов синхронизации для публикации через Интернет по протоколу FTP, а также их доступность для других служб.

allow_push

bit

Указывает, разрешена ли для данной публикации принудительная подписка.

allow_pull

bit

Указывает, разрешена ли для данной публикации подписка по запросу.

allow_anonymous

bit

Указывает, разрешена ли для данной публикации анонимная подписка.

independent_agent

bit

Указывает, есть ли у данной публикации изолированный агент распространителя.

immediate_sync_ready

bit

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

allow_sync_tran

bit

Определяет, разрешены ли в публикации немедленно обновляемые подписки.

autogen_sync_procs

bit

Указывает, будут ли автоматически создаваться хранимые процедуры для поддержки немедленно обновляемых подписок.

snapshot_jobid

binary(16)

Идентификатор запланированной задачи.

retention

int

Сохраняемый объем изменений данной публикации в часах.

has subscription

bit

Указывает, есть ли у публикации активные подписки. 1 = активные подписки есть, 0 = активные подписки отсутствуют.

allow_queued_tran

bit

Указывает, разрешено ли накопление изменений в подписчике в очереди до тех пор, пока их можно применить к издателю. При значении 0 изменения на подписчике не помещаются в очередь.

snapshot_in_defaultfolder

bit

Указывает, хранятся ли файлы моментальных снимков в папке по умолчанию. При значении 0 файлы моментальных снимков хранятся в другом месте, заданном параметром alternate_snapshot_folder. При значении 1 файлы моментальных снимков находятся в папке по умолчанию.

alt_snapshot_folder

nvarchar(255)

Указывает местоположение альтернативной папки для моментального снимка.

pre_snapshot_script

nvarchar(255)

Задает указатель на расположение файлов SQL. Если моментальный снимок применяется на подписчике, то агент распространителя запускает предварительный скрипт моментального снимка до выполнения скриптов реплицируемых объектов.

post_snapshot_script

nvarchar(255)

Задает указатель на расположение файлов SQL. Агент распространителя запускает заключительный скрипт после применения скриптов и данных всех реплицируемых объектов во время первоначальной синхронизации.

compress_snapshot

bit

Указывает необходимость сжатия моментального снимка, записываемого в папку alt_snapshot_folder в формат Microsoft САВ. 0 означает, что сжатие моментального снимка выполняться не будет.

ftp_address

sysname

Сетевой адрес службы FTP для распространителя. Указывает расположение файлов моментальных снимков публикаций для агента распространителя или агента слияния подписчика.

ftp_port

int

Номер порта службы FTP для распространителя.

ftp_subdirectory

nvarchar(255)

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

ftp_login

sysname

Имя пользователя для подключения к службе FTP.

allow_dts

bit

Показывает, что в публикации разрешены преобразования данных. Значение 0 указывает, что преобразование DTS запрещено.

allow_subscription_copy

bit

Указывает, разрешено ли копирование баз данных подписки, подписанных на данную публикацию. Значение 0 показывает, что копирование запрещено.

centralized_conflicts

bit

Определяет, хранятся ли на издателе конфликтные записи.

0 = конфликтные записи хранятся как в издателе, так и в подписчике, вызвавшем конфликт.

1 = конфликтные записи хранятся на издателе.

conflict_retention

int

Задает срок хранения конфликтных записей в днях.

conflict_policy

int

Задает политику устранения конфликтов при обновлении подписчика посредством очередей. Может принимать одно из следующих значений:

1 = разрешение конфликта в пользу издателя;

2 = разрешение конфликта в пользу подписчика;

3 = подписка инициализируется повторно.

queue_type

 

Задает используемый тип очереди. Может принимать одно из следующих значений:

msmq = для хранения транзакций используется компонент Microsoft Message Queuing;

sql = для хранения транзакций используется SQL Server.

ПримечаниеПримечание

Компонент Message Queuing больше не поддерживается.

backward_comp_level

 

Уровень совместимости базы данных. Может иметь одно из следующих значений:

90 = Microsoft SQL Server 2005

100 = Microsoft SQL Server 2008

publish_to_AD

bit

Указывает, опубликована ли публикация в Microsoft Active Directory™. 1 = опубликована, 0 = не опубликована.

allow_initialize_from_backup

bit

Показывает, может ли подписчик инициализировать подписку на эту публикацию из резервной копии, а не из исходного моментального снимка. 1 = подписки можно инициализировать из резервной копии, 0 = подписки нельзя инициализировать из резервной копии. Дополнительные сведения о транзакционном подписчике без моментального снимка см. в разделе Инициализация подписки на публикацию транзакций без моментального снимка.

replicate_ddl

int

Указывает, поддерживается ли для публикации репликация схемы. 1 показывает, что инструкции языка описания данных DDL выполняются после репликации издателя, а 0 означает, что DDL-инструкции не реплицируются. Дополнительные сведения см. в разделе Внесение изменений схем в базы данных публикации.

enabled_for_p2p

int

Указывает, может ли публикация использоваться в одноранговой топологии репликации. 1 = публикация поддерживает одноранговую репликацию. Дополнительные сведения см. в разделе Одноранговая репликация транзакций.

publish_local_changes_only

int

Указано только в ознакомительных целях. Не поддерживается. Совместимость с будущими версиями не гарантируется.

enabled_for_het_sub

int

Указывает, поддерживает ли публикация подписчиков, отличных от SQL Server. 1 = подписчики, отличные от SQL Server, поддерживаются. 0 = поддерживаются только подписчики SQL Server. Дополнительные сведения см. в разделе Подписчики, отличные от подписчиков SQL Server.

enabled_for_p2p_conflictdetection

int

Определяет, будет ли агент распространителя обнаруживать конфликты публикации, разрешенной для одноранговой репликации. Значение 1 означает, что конфликты обнаруживаются. Дополнительные сведения см. в разделе Обнаружение конфликтов в одноранговой репликации.

originator_id

int

Указывает идентификатор в одноранговой топологии. Этот идентификатор используется для обнаружения конфликтов, если параметр enabled_for_p2p_conflictdetection установлен в значение 1. Список использованных идентификаторов запросите в системной таблице Mspeer_originatorid_history.

p2p_continue_onconflict

int

Указывает, продолжает ли агент распространителя обрабатывать изменения при обнаружении конфликта. Значение 1 означает, что агент продолжает обрабатывать изменения.

ПредупреждениеВнимание!

Рекомендуется использовать значение по умолчанию, равное 0. Если присвоить этому аргументу значение 1, то агент распространителя будет пытаться обеспечить конвергентность данных в топологии, применяя конфликтующую строку из узла с наибольшим значением идентификатора инициатора. Этот метод не гарантирует конвергенции. После обнаружения конфликта следует убедиться, что топология остается согласованной. Дополнительные сведения см. в подразделе «Обработка конфликтов» раздела Обнаружение конфликтов в одноранговой репликации.

alllow_partition_switch

int

Указывает, могут ли инструкции ALTER TABLE…SWITCH выполняться по отношению к опубликованной базе данных. Дополнительные сведения см. в разделе Репликация секционированных таблиц и индексов.

replicate_partition_switch

int

Указывает, должны ли инструкции ALTER TABLE…SWITCH, которые выполняются по отношению к опубликованной базе данных, реплицироваться на подписчики. Этот параметр является допустимым, только если аргумент allow_partition_switch установлен в значение 1.

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

0 (успешное завершение) или 1 (неуспешное завершение)

Замечания

Процедура sp_helppublication используется в репликации моментальных снимков и транзакций.

Процедура sp_helppublication возвращает сведения обо всех публикациях, которые принадлежат пользователю, выполняющему эту процедуру.

Пример

DECLARE @myTranPub AS sysname
SET @myTranPub = N'AdvWorksProductTran' 

USE [AdventureWorks2012]
EXEC sp_helppublication @publication = @myTranPub
GO

Разрешения

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

Если издатель отличается от SQL Server, то процедуру sysadmin могут выполнять только члены предопределенной роли сервера db_owner на распространителе или предопределенной роли базы данных sp_helppublication в базе данных распространителя, а также пользователи из списка доступа к публикации.

См. также

Справочник

sp_addpublication (Transact-SQL)

sp_changepublication (Transact-SQL)

sp_droppublication (Transact-SQL)

Хранимые процедуры репликации (Transact-SQL)

Основные понятия

Просмотр и изменение свойств публикации