sp_syscollector_update_collection_set (Transact-SQL)
Si applica a: SQL Server
Consente di rinominare un set di raccolta definito dall'utente o di modificarne le proprietà.
Avviso
Nei casi in cui l'account di Windows configurato come proxy è un utente non interattivo o interattivo che non ha ancora eseguito l'accesso, la directory del profilo non esiste e la creazione della directory di staging avrà esito negativo. Pertanto, se si usa un account proxy in un controller di dominio, è necessario specificare un account interattivo usato almeno una volta per assicurarsi che la directory del profilo sia stata creata.
Convenzioni relative alla sintassi Transact-SQL
Sintassi
sp_syscollector_update_collection_set
[ [ @collection_set_id = ] collection_set_id ]
[ , [ @name = ] N'name' ]
[ , [ @new_name = ] N'new_name' ]
[ , [ @target = ] N'target' ]
[ , [ @collection_mode = ] collection_mode ]
[ , [ @days_until_expiration = ] days_until_expiration ]
[ , [ @proxy_id = ] proxy_id ]
[ , [ @proxy_name = ] N'proxy_name' ]
[ , [ @schedule_uid = ] 'schedule_uid' ]
[ , [ @schedule_name = ] N'schedule_name' ]
[ , [ @logging_level = ] logging_level ]
[ , [ @description = ] N'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 = ] N'name'
Nome del set di raccolta. @name è sysname e deve avere un valore se @collection_set_id è NULL
.
[ @new_name = ] N'new_name'
Nuovo nome per il set di raccolta. @new_name è sysname, con un valore predefinito NULL
, e se usato, 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 syscollector_collection_sets
visualizzazione di sistema.
[ @target = ] N'target'
Riservato a un uso futuro. @target è nvarchar(128), con il valore predefinito NULL
.
[ @collection_mode = ] collection_mode
Tipo di raccolta dati da utilizzare. @collection_mode è smallint e può avere uno dei valori seguenti:
0
: modalità memorizzata nella cache. La raccolta e il caricamento dei dati seguono una pianificazione differente. Specificare la modalità cache per la raccolta continua.1
: modalità non memorizzata nella 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.
Se si passa dalla modalità non memorizzata nella cache alla modalità memorizzata nella cache (0
), è necessario specificare anche @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 è smallint e deve essere 0
o un numero intero positivo.
[ @proxy_id = ] proxy_id
Identificatore univoco per un account proxy di SQL Server Agent. @proxy_id è int.
[ @proxy_name = ] N'proxy_name'
Nome del proxy. @proxy_name è sysname, con il valore predefinito NULL
.
[ @schedule_uid = ] 'schedule_uid'
GUID che punta a una pianificazione. @schedule_uid è uniqueidentifier, con un valore predefinito .NULL
Per ottenere @schedule_uid, eseguire una query sulla tabella di sysschedules
sistema.
Quando @collection_mode è impostato su 0
, è necessario specificare @schedule_uid o @schedule_name . Quando @collection_mode è impostato su 1
, @schedule_uid o @schedule_name viene ignorato se specificato.
[ @schedule_name = ] N'schedule_name'
Nome della pianificazione. @schedule_name è sysname, con un valore predefinito .NULL
Se specificato, @schedule_uid deve essere NULL
. Per ottenere @schedule_name, eseguire una query sulla tabella di sysschedules
sistema.
[ @logging_level = ] logging_level
Livello di registrazione. @logging_level è smallint, con un valore predefinito , 1
con uno dei valori seguenti:
0
: registra le informazioni sull'esecuzione e gli eventi SSIS che tengono traccia:- Avvio/arresto dei set di raccolta
- Avvio/arresto dei pacchetti
- Informazioni sugli errori
1
: registrazione di livello 0 e:- Statistiche di esecuzione
- Stato di avanzamento della raccolta in esecuzione continua
- Eventi di avviso da SSIS
2
: registrazione di livello 1 e informazioni dettagliate sugli eventi da SSIS.
[ @description = ] N'description'
Descrizione del set di raccolta. @description è nvarchar(4000), con un valore predefinito .NULL
Valori del codice restituito
0
(esito positivo) o 1
(errore).
Osservazioni:
sp_syscollector_update_collection_set
deve essere eseguito nel contesto del msdb
database di sistema.
Sia collection_set_id che il nome deve avere un valore, entrambi non possono essere NULL
. Per ottenere questi valori, eseguire una query sulla syscollector_collection_sets
visualizzazione di sistema.
Se il set di raccolta è in esecuzione, è possibile aggiornare solo schedule_uid e descrizione. Per arrestare il set di raccolta, usare sp_syscollector_stop_collection_set.
Autorizzazioni
Per eseguire questa procedura, è richiesta l'appartenenza al ruolo predefinito del database dc_admin o dc_operator (con autorizzazione EXECUTE). Sebbene dc_operator possibile eseguire questa stored procedure, i membri di questo ruolo sono limitati nelle proprietà che possono modificare. Le proprietà seguenti possono essere modificate solo da dc_admin:
- @new_name
- @target
- @proxy_id
- @description
- @collection_mode
- @days_until_expiration
Esempi
R. Rinominare 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. Modificare la modalità raccolta da non memorizzata nella cache a memorizzata nella 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. Modificare altri parametri del set di raccolta
Nell'esempio seguente vengono aggiornate varie 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