Partilhar via


SQL Server, objeto User Settable

O objeto User Settable no Microsoft SQL Server permite criar instâncias de contador personalizadas. Use instâncias de contador personalizadas para monitorar aspectos do servidor que escapam aos contadores existentes, como componentes exclusivos de seu banco de dados do SQL Server (por exemplo, o número de pedidos de clientes registrados em log ou o estoque de produtos).

O objeto Definível pelo Usuário contém 10 instâncias do contador de consulta: Contador de usuário 1 a Contador do usuário 10. Esses contadores são mapeados para os procedimentos armazenados SQL Server sp_user_counter1 por meio de sp_user_counter10. À medida que esses procedimentos armazenados são executados por aplicativos do usuário, os valores definidos por eles são exibidos no Monitor do Sistema. Um contador pode monitorar qualquer valor inteiro individual (por exemplo, um procedimento armazenado que conta quantos pedidos de um produto em particular ocorreram em um dia).

Observação

Os procedimentos armazenados de contadores do usuário não são sondados automaticamente pelo Monitor do Sistema. Eles devem ser executados explicitamente por um aplicativo de usuário para obter os valores de contador a serem atualizados. Use um gatilho para atualizar o valor do contador automaticamente. Por exemplo, para criar um contador que monitore o número de linhas em uma tabela, crie um gatilho INSERT e DELETE na tabela que executa a seguinte instrução: SELECT COUNT(*) FROM table. Sempre que o gatilho for acionado devido à ocorrência de operação INSERT ou DELETE na tabela, o contador do Monitor do Sistema será atualizado automaticamente.

Essa tabela descreve o objeto User Settable do SQL Server.

Contadores do SQL Server definíveis pelo usuário Descrição
Consulta O objeto User Settable contém o contador da consulta. Os usuários configuram os Contadores do usuário dentro do objeto de consulta.

Essa tabela descreve as instâncias do contador de Consultas .

Instâncias do contador de consultas Descrição
Contador do usuário 1 Definido usando sp_user_counter1.
Contador do usuário 2 Definido usando sp_user_counter2.
Contador do usuário 3 Definido usando sp_user_counter3.
...
Contador do usuário 10 Definido usando sp_user_counter10.

Para usar os procedimentos armazenados de contador do usuário, execute-os a partir de seu próprio aplicativo com um único parâmetro de inteiro representando o novo valor do contador. Por exemplo, para definir o Contador do usuário 1 com o valor 10, execute essa instrução Transact-SQL:

EXECUTE sp_user_counter1 10  

Os procedimentos armazenados de contador do usuário podem ser chamados a partir de qualquer lugar onde normalmente podem ser chamados os outros procedimentos armazenados, como os seus próprios procedimentos armazenados. Por exemplo, é possível criar o seguinte procedimento armazenado para contar o número de conexões e tentativas de conexão desde que foi iniciada a instância do SQL Server :

DROP PROC My_Proc  
GO  
CREATE PROC My_Proc  
AS   
   EXECUTE sp_user_counter1 @@CONNECTIONS  
GO  

A função @@CONNECTIONS retorna o número de conexões ou tentativas de conexões desde que uma instância do SQL Server foi iniciada. Esse valor é passado ao procedimento armazenado sp_user_counter1 como parâmetro.

Importante

Torne as consultas definidas nos procedimentos armazenados de contador do usuário o mais simples possível. Consultas que consomem muita memória e realizam operações substanciais de classificação ou hash ou grandes quantidades de E/S são de execução dispendiosa e podem influir no desempenho.

Permissões

sp_user_counter está disponível para todos os usuários, mas pode ser restringido para qualquer contador de consultas.

Consulte Também

Monitorar o uso de recursos (Monitor do Sistema)