Condividi tramite


sp_syscollector_update_collection_set (Transact-SQL)

Consente di rinominare un set di raccolta definito dall'utente o di modificarne le proprietà.

Icona di collegamento a un argomentoConvenzioni della sintassi Transact-SQL

Sintassi

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' ]

Argomenti

  • [ @collection_set_id = ] collection_set_id
    Identificatore locale univoco per il set di raccolta. collection_set_id è int e deve avere un valore se name è NULL.

  • [ @name = ] 'name'
    Nome del set di raccolta. name è di tipo sysname e deve avere un valore se collection_set_id è NULL.

  • [ @new_name = ] 'new_name'
    Nuovo nome del set di raccolta. new_name è di tipo sysname e, se utilizzato, non può essere una stringa vuota. new_name deve essere univoco. Per un elenco dei nomi dei set di raccolta correnti, eseguire una query sulla vista di sistema syscollector_collection_sets.

  • [ @target = ] 'target'
    Riservato per utilizzi futuri.

  • [ @collection_mode = ] collection_mode
    Tipo di raccolta dati da utilizzare. collection_mode è di tipo smallint e può avere uno dei seguenti valori:

    0 - Modalità cache. La raccolta e il caricamento dei dati seguono una pianificazione differente. Specificare la modalità cache per la raccolta continua.

    1 - Modalità non in cache. La raccolta e il caricamento dei dati seguono la stessa pianificazione. Specificare la modalità non in cache per la raccolta ad hoc o snapshot.

    In caso di passaggio dalla modalità non in cache alla modalità cache (0), è necessario specificare inoltre schedule_uid o schedule_name.

  • [ @days_until_expiration= ] days_until_expiration
    Numero di giorni durante i quali i dati raccolti vengono salvati nel data warehouse di gestione. days_until_expiration è di tipo smallint. days_until_expiration deve essere 0 o un numero intero positivo.

  • [ @proxy_id = ] proxy_id
    Identificatore univoco per un account proxy di SQL Server Agent. proxy_id è di tipo int.

  • [ @proxy_name = ] 'proxy_name'
    Nome del proxy. proxy_name è di tipo sysname e ammette valori Null.

  • [ @schedule_uid = ] 'schedule_uid'
    GUID che punta a una pianificazione. schedule_uid è di tipo uniqueidentifier.

    Per ottenere schedule_uid, eseguire una query sulla tabella di sistema sysschedules.

    Quando collection_mode è impostato su 0, è necessario specificare schedule_uid o schedule_name. Quando collection_mode è impostato su 1, se schedule_uid o schedule_name è specificato, viene ignorato.

  • [ @schedule_name = ] 'schedule_name'
    Nome della pianificazione. schedule_name è di tipo sysname e ammette valori Null. Se specificato, schedule_uid deve essere NULL. Per ottenere schedule_name, eseguire una query sulla tabella di sistema sysschedules.

  • [ @logging_level = ] logging_level
    Livello di registrazione. logging_level è di tipo smallint e i possibili valori sono i seguenti:

    0 - Registrazione di informazioni di esecuzione ed eventi SSIS che tengono traccia dei seguenti elementi:

    • Avvio/arresto dei set di raccolta

    • Avvio/arresto dei pacchetti

    • Informazioni sugli errori

    1 - Registrazione di livello 0 e dei seguenti elementi:

    • Statistiche di esecuzione

    • Stato di avanzamento della raccolta in esecuzione continua

    • Eventi di avviso da SSIS

    2 - Registrazione di livello 1 e di informazioni dettagliate sugli eventi di SSIS.

    Il valore predefinito di logging_level è 1.

  • [ @description = ] 'description'
    Descrizione del set di raccolta. description è di tipo nvarchar(4000).

Valori dei codici restituiti

0 (esito positivo) o 1 (esito negativo)

Osservazioni

È necessario eseguire sp_syscollector_update_collection_set nel contesto del database di sistema msdb.

È necessario che o collection_set_id o name abbia un valore. Non possono essere entrambi NULL. Per ottenere questi valori, eseguire una query sulla vista di sistema syscollector_collection_sets.

Se il set di raccolta è in esecuzione, è possibile aggiornare solo schedule_uid e description. Per arrestare il set di raccolta, utilizzare sp_syscollector_stop_collection_set.

Autorizzazioni

Per eseguire questa procedura, è necessaria l'appartenenza al ruolo predefinito del database dc_admin o dc_operator (con autorizzazione EXECUTE). Anche se dc_operator è in grado di eseguire questa stored procedure, i membri di questo ruolo possono modificare solo determinate proprietà. Le proprietà seguenti possono essere modificate solo da dc_admin:

  • @new_name

  • @target

  • @proxy_id

  • @description

  • @collection_mode

  • @days_until_expiration

Esempi

A. Ridenominazione di un set di raccolta

Nell'esempio seguente viene rinominato un set di raccolta definito dall'utente.

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

B. Modifica della modalità di raccolta da non in cache a cache

Nell'esempio seguente la modalità di raccolta viene modificata da non in cache a cache. Per eseguire questa modifica, è necessario specificare un ID oppure un nome della pianificazione.

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

C. Modifica di altri parametri del set di raccolta

Nell'esempio seguente vengono aggiornate diverse proprietà del set di raccolta denominato "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