Compartilhar via


SQL Server, objeto User Settable

O objeto Definível pelo Usuário 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 consultas: de Contador do usuário 1 a Contador do usuário 10. Esses contadores mapeiam para os procedimentos armazenados do SQL Server de sp_user_counter1 a 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çãoObservaçã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 SQL ServerDefinível pelo Usuário.

Contadores do SQL Server definíveis pelo usuário

Descrição

Consulta

O objeto Definível pelo Usuário 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ão desde que tenha sido iniciada uma instância do SQL Server . Esse valor é passado ao procedimento armazenado sp_user_counter1 como parâmetro.

Observação importanteImportante

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

Outros recursos