Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Usado para modificar as propriedades de um item de coleta definido pelo usuário ou renomear um desses itens.
Convenções da sintaxe Transact-SQL
Sintaxe
sp_syscollector_update_collection_item
[ [ @collection_item_id = ] collection_item_id ]
, [ [ @name = ] 'name' ]
, [ [ @new_name = ] 'new_name' ]
, [ [ @frequency = ] frequency ]
, [ [ @parameters = ] 'parameters' ]
Argumentos
[ @collection\_item\_id = ] collection_item_id
É o identificador exclusivo que identifica o item de coleta. collection_item_id é int com o valor padrão de NULL. collection_item_id deverá ter um valor se name for NULL.[ @name = ] 'name'
É o nome do item de coleta. name é sysname com o valor padrão de NULL. name deverá ter um valor se collection_item_id for NULL.[ @new\_name = ] 'new_name'
É o novo nome do item da coleta. new_name é sysname e, se usado, não poderá ser uma cadeia de caracteres vazia.new_name deve ser exclusivo. Para obter uma lista dos nomes de itens de coleta atuais, consulte a exibição do sistema syscollector_collection_items.
[ @frequency = ] frequency
É a frequência (em segundos) com que os dados são coletados por esse item de coleta. frequency é int, com um padrão de 5, o valor mínimo que pode ser especificado.[ @parameters = ] 'parameters'
Os parâmetros de entrada para o item da coleta. parameters é xml com um padrão de NULL. O esquema parameters deve corresponder ao esquema de parâmetros do tipo de coletor.
Valores de código de retorno
0 (êxito) ou 1 (falha)
Comentários
Se o conjunto de coleta estiver definido para o modo não armazenado em cache, a alteração da frequência será ignorada, pois esse modo faz com que a coleção e o carregamento dos dados ocorram conforme a agenda especificada para o conjunto de coleta. Para exibir o status do conjunto de coleta, execute a consulta a seguir. Substitua <collection_item_id> pela ID do item de coleta a ser atualizado.
USE msdb;
GO
SELECT cs.collection_set_id, collection_set_uid, cs.name
,'is running' = CASE WHEN is_running = 0 THEN 'No' ELSE 'Yes' END
,'cache mode' = CASE WHEN collection_mode = 0 THEN 'Cached mode' ELSE 'Non-cached mode' END
FROM syscollector_collection_sets AS cs
JOIN syscollector_collection_items AS ci
ON ci.collection_set_id = cs.collection_set_id
WHERE collection_item_id = <collection_item_id>;
Permissões
Requer associação na função de banco de dados fixa dc_admin ou dc_operator (com a permissão EXECUTE) para executar esse procedimento. Embora dc_operator possa executar esse procedimento armazenado, membros dessa função estão limitados nas propriedades que podem alterar. As propriedades a seguir podem ser alteradas apenas por meio de dc_admin:
@new\_name
@parameters
Exemplos
Os exemplos a seguir se baseiam no item de coleta criado no exemplo definido em sp_syscollector_create_collection_item (Transact-SQL).
A.Alterando a frequência de coleta
O exemplo a seguir altera a frequência de coleta do item de coleta especificado.
USE msdb;
GO
EXEC sp_syscollector_update_collection_item
@name = N'My custom TSQL query collector item',
@frequency = 3000;
GO
B.Renomeando um item de coleta
O exemplo a seguir renomeia um item de coleta.
USE msdb;
GO
EXEC sp_syscollector_update_collection_item
@name = N'My custom TSQL query collector item',
@new_name = N'My modified TSQL item';
GO
C.Alterando os parâmetros de um item de coleta
O exemplo a seguir altera os parâmetros associados ao item de coleta. A instrução definida no atributo <Value> é alterada e o atributo UseSystemDatabases é definido como false. Para exibir os parâmetro atuais para este item, consulte a coluna parameters na exibição do sistema syscollector_collection_items. Talvez seja necessário modificar o valor para @collection\_item\_id.
USE msdb;
GO
EXEC sp_syscollector_update_collection_item
@collection_item_id = 9,
@parameters = '
<ns:TSQLQueryCollector xmlns:ns="DataCollectorType">
<Query>
<Value>SELECT * FROM sys.dm_db_index_usage_stats</Value>
<OutputTable>MyOutputTable</OutputTable>
</Query>
<Databases>
<Database> UseSystemDatabases = "false"
UseUserDatabases = "true"</Database>
</Databases>
</ns:TSQLQueryCollector>';
GO
Consulte também
Referência
Procedimentos armazenados do sistema (Transact-SQL)
sp_syscollector_create_collection_item (Transact-SQL)
syscollector_collection_items (Transact-SQL)