Partilhar via


sp_trace_generateevent (Transact-SQL)

Cria um evento definido pelo usuário.

Ícone de vínculo de tópicoConvenções de sintaxe Transact-SQL

Sintaxe

sp_trace_generateevent [ @eventid = ] event_id 
     [ , [ @userinfo = ] 'user_info' ]
     [ , [ @userdata = ] user_data ]

Argumentos

  • [ @eventid=] event_id
    É a ID do evento a ser ativado. event_id é int, sem nenhum padrão. A ID deve ser um dos números de evento de 82 a 91, que representam eventos definidos pelo usuário conforme definidos com sp_trace_setevent.

  • [ @ userinfo=] 'user_info'
    É a cadeia de caracteres opcional definida pelo usuário que identifica o motivo do evento. user_info é nvarchar(128), com um padrão NULL.

  • [ @ userdata=] user_data
    São os dados opcionais especificados pelo usuário para o evento. user_data é varbinary(8000), com um padrão NULL.

Valores de código de retorno

A tabela a seguir descreve os valores de código que os usuários podem obter após a conclusão do procedimento armazenado.

Código de retorno

Descrição

0

Nenhum erro.

1

Erro desconhecido.

3

O evento especificado não é válido. O evento pode não existir ou não é apropriado para o procedimento de armazenamento.

13

Memória insuficiente. Retornado quando não há memória suficiente para executar a ação especificada.

Comentários

sp_trace_generateevent é um procedimento armazenado do Microsoft SQL Server 2000 que executa muitas das ações anteriormente executadas por procedimentos armazenados estendidos xp_trace_* disponíveis em versões anteriores do SQL Server. Use sp_trace_generateevent em vez de xp_trace_generate_event.

Somente números de ID de eventos definidos pelo usuário podem ser usados com sp_trace_generateevent. O SQL Server irá gerar um erro se outros números de ID de evento forem usados.

Os parâmetros de todos os procedimentos armazenados do Rastreamento SQL (sp_trace_xx) são rigorosamente digitados. Se esses parâmetros não forem chamados com os tipos de dados com parâmetro de entrada corretos, como especificado na descrição do argumento, o procedimento armazenado retornará um erro.

Permissões

O usuário deve ter permissão ALTER TRACE.

Exemplos

O exemplo a seguir cria um evento configurável pelo usuário em uma tabela de exemplo.

--Create a sample table.
CREATE TABLE user_config_test(col1 int, col2 char(10))

--DROP the trigger if it already exists.
IF EXISTS
   (SELECT * FROM sysobjects WHERE name = 'userconfig_trg')
   DROP TRIGGER userconfig_trg

--Create an ON INSERT trigger on the sample table.
CREATE TRIGGER userconfig_trg
   ON user_config_test FOR INSERT
AS
EXEC master..sp_trace_generateevent
   @event_class = 82, @userinfo = N'Inserted row into user_config_test'

--When an insert action happens, the user-configurable event fires. If 
you were capturing the event id=82, you will see it in the Profiler output.
INSERT INTO user_config_test VALUES(1, 'abc')