sp_syscollector_update_collection_set (Transact-SQL)

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

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

Синтаксис

sp_syscollector_update_collection_set 
    [ [ @collection_set_id = ] collection_set_id ]
        , [ [ @name = ] 'name' ]
        , [ [ @new_name = ] 'new_name' ]
        , [ [ @target = ] 'target' ]
        , [ [ @collection_mode = ] collection_mode ]
        , [ [ @days_until_expiration = ] days_until_expiration ]
        , [ [ @proxy_id = ] proxy_id ]
        , [ [ @proxy_name = ] 'proxy_name' ]
        ,[ [ @schedule_uid = ] 'schedule_uid' ]
        ,[ [ @schedule_name = ] 'schedule_uid' ]
        , [ [ @logging_level = ] logging_level ]
        , [ [ @description = ] 'description' ]

Аргументы

  • [ @collection_set_id = ] collection_set_id
    Уникальный локальный идентификатор набора сбора. Аргумент collection_set_id имеет тип int и должен иметь значение, если аргумент name имеет значение NULL.

  • [ @name = ] 'name'
    Имя набора сбора. Аргумент name имеет тип sysname и должен иметь значение, если аргумент collection_set_id имеет значение NULL.

  • [ @new_name = ] 'new_name'
    Новое имя набора сбора. Аргумент new_name имеет тип sysname и, если используется, не может быть пустой строкой. Аргумент new_name должен быть уникальным. Чтобы получить список имен текущего набора сбора, выполните запрос системного представления syscollector_collection_sets.

  • [ @target = ] 'target'
    Зарезервировано для последующего использования.

  • [ @collection_mode = ] collection_mode
    Используемый тип сбора данных. Аргумент collection_mode имеет тип smallint и может иметь одно из следующих значений.

    0 — режим с кэшированием. Сбор и передача данных выполняются по отдельным расписаниям. Укажите кэшированный режим для непрерывного сбора.

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

    При изменении режима с некэшированного на кэшированный (0) необходимо также указать schedule_uid или schedule_name.

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

  • [ @proxy_id = ] proxy_id
    Уникальный идентификатор учетной записи-посредника агента SQL Server. Аргумент proxy_id имеет тип int.

  • [ @proxy_name = ] 'proxy_name'
    Имя учетной записи-посредника. Аргумент proxy_name имеет тип sysname и допускает значения NULL.

  • [ @schedule_uid = ] 'schedule_uid'
    Идентификатор GUID, указывающий на расписание. Аргумент schedule_uid имеет тип uniqueidentifier.

    Чтобы получить аргумент schedule_uid, выполните запрос к системной таблице sysschedules.

    Когда аргументу collection_mode задано значение 0, необходимо указать schedule_uid или schedule_name. Когда аргументу collection_mode задано значение 1, то, если указан schedule_uid или schedule_name, он пропускается.

  • [ @schedule_name = ] 'schedule_name'
    Имя расписания. Аргумент schedule_name имеет тип sysname и допускает значения NULL. Если он указан, аргумент schedule_uid должен иметь значение NULL. Чтобы получить аргумент schedule_name, выполните запрос к системной таблице sysschedules.

  • [ @logging_level = ] logging_level
    Уровень ведения журнала. Параметр logging_level имеет тип smallint и может иметь одно из следующих значений.

    0 — Регистрировать сведения о выполнении и события служб SSIS, которые отслеживают:

    • Запуск и остановку наборов сбора.

    • Запуск и остановку пакетов.

    • Сведения об ошибках.

    1 — Ведение журнала на уровне 0, а также:

    • Статистика выполнения.

    • Ход непрерывно работающего сбора.

    • Предупреждающие события от служб SSIS.

    2 — Ведениe журнала на уровне 1, а также запись подробных сведений о событиях служб SSIS.

    Значение logging_level по умолчанию равно 1.

  • [ @description = ] 'description'
    Описание набора сбора. Аргумент description имеет тип nvarchar(4000).

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

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

Замечания

Функция sp_syscollector_update_collection_set должна выполняться в контексте системной базы данных msdb.

Обязательно должен быть задан один из аргументов collection_set_id или name, они не могут иметь значение NULL одновременно. Чтобы получить эти значения, выполните запрос системного представления syscollector_collection_sets.

Если набор сбора выполняется, можно только обновить schedule_uid и description. Чтобы остановить набор сбора, используйте функцию sp_syscollector_stop_collection_set.

Разрешения

Для выполнения этой процедуры требуется членство в предопределенной роли базы данных dc_admin или dc_operator (с разрешением EXECUTE). Хотя члены роли dc_operator могут выполнять эту хранимую процедуру, они могут менять не все свойства. Следующие свойства могут изменить только члены роли dc_admin:

  • @new_name

  • @target

  • @proxy_id

  • @description

  • @collection_mode

  • @days_until_expiration

Примеры

А. Переименование набора сбора

В следующем примере показано переименование определяемого пользователем набора сбора.

USE msdb;
GO
EXECUTE dbo.sp_syscollector_update_collection_set
@name = N'Simple collection set test 1',
@new_name = N'Collection set test 1 in cached mode';
GO

Б. Изменение режима сбора с некэшированного на кэшированный

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

USE msdb;
GO
EXECUTE dbo.sp_syscollector_update_collection_set
@name = N'Collection set test 1 in cached mode',
@collection_mode = 0,
@schedule_uid = 'C7022AF3-51B8-4011-B159-64C47C88FF70';
-- alternatively, use @schedule_name.
-- @schedule_name = N'CollectorSchedule_Every_15min;
GO

В. Изменение других параметров набора сбора

В следующем примере производится обновление различных свойств набора сбора «Simple collection set test 2».

USE msdb;
GO
EXEC dbo.sp_syscollector_update_collection_set
@name = N'Simple collection set test 2',
@collection_mode = 1,
@days_until_expiration = 5,
@description = N'This is a test collection set that runs in noncached mode.',
@logging_level = 0;
GO