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


sp_changepublication (Transact-SQL)

Изменения: 12 декабря 2006 г.

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

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

Синтаксис

sp_changepublication [ [ @publication = ] 'publication' ]
    [ , [ @property = ] 'property' ]
    [ , [ @value = ] 'value' ]
    [ , [ @force_invalidate_snapshot = ] force_invalidate_snapshot ]
    [ , [ @force_reinit_subscription = ] force_reinit_subscription ]
    [ , [ @publisher = ] 'publisher' ]

Аргументы

  • [ @publication = ] 'publication'
    Имя публикации. Аргумент publication имеет тип sysname и значение по умолчанию NULL.
  • [ @property = ] 'property'
    Изменяемое свойство публикации. Аргумент property имеет тип nvarchar(255).
  • [ @value = ] 'value'
    Новое значение свойства. Аргумент value имеет тип nvarchar(255) и значение по умолчанию NULL.

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

    Свойство

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

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

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

    Сведения о свойствах, при изменении которых требуется формирование нового моментального снимка, см. в разделе «Примечания».

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

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

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

  • [ @publisher = ] 'publisher'
    Указывает издатель, отличный от SQL Server. Аргумент publisher имеет тип sysname и значение по умолчанию NULL.

    ms188413.note(ru-ru,SQL.90).gifПримечание.
    Аргумент publisher не следует использовать при изменении свойств статьи на издателе SQL Server.

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

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

Замечания

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

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

  • alt_snapshot_folder
  • compress_snapshot
  • enabled_for_het_sub
  • ftp_address
  • ftp_login
  • ftp_password
  • ftp_port
  • ftp_subdirectory
  • post_snapshot_script
  • pre_snapshot_script
  • snapshot_in_defaultfolder
  • sync_mode

Чтобы вывести список объектов публикации в службе Active Directory с помощью параметра publish_to_active_directory, в службе Active Directory должен существовать объект SQL Server.

Разрешения

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

Пример

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

-- Turn off DDL replication for the transactional publication.
USE [AdventureWorks]
EXEC sp_changepublication 
  @publication = @publication, 
  @property = N'replicate_ddl', 
  @value = 0
GO

См. также

Справочник

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

Другие ресурсы

How to: View and Modify Publication Properties (Replication Transact-SQL Programming)
Изменение свойств публикации и статей

Справка и поддержка

Получение помощи по SQL Server 2005

Журнал изменений

Версия Журнал

12 декабря 2006 г.

Новое содержимое
  • Добавлены сведения о новых значениях свойства sync_method.