sp_trace_generateevent (Transact-SQL)
Cria um evento definido pelo usuário.
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')
Consulte também