Aracılığıyla paylaş


sp_trace_generateevent (Transact-SQL)

Bir kullanıcı tanımlı olayoluşturur.

Konu bağlantısı simgesiTransact-SQL sözdizimi kuralları

Sözdizimi

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

Bağımsız değişkenler

  • [ @ EventID =] event_id
    Etkinleştirmek için olay kimliğidir.event_idİş int, ile hiçbir varsayılan.Kimliği ile küme olarak kullanıcı tanımlı olaylarını temsil 91-82 olay numaralardan biri olmalıdır sp_trace_setevent.

  • [ UserInfo @=] 'user_info'
    İsteğe bağlı kullanıcı tanımlı dize olaynedeni tanımlamak için kullanılır.user_infoİş nvarchar(128), varsayılan değer null.

  • [ @ userdata=] user_data
    İsteğe bağlı kullanıcı tanımlı olayverileridir.user_dataİş varbinary(8000), varsayılan değer null.

Dönüş Kodu Değerleri

Aşağıdaki tablo kullanıcıların saklı yordamişleminin tamamlanmasının ardından almak kodu değerleri açıklar.

Dönüş kodu

Açıklama

0

Hata yok.

1

Bilinmeyen hata.

3

Belirtilen olay geçerli değil.olay olmayabilir veya uygun bir deposu yordam için değil.

13

Bellek yetersiz.Belirtilen bir eylemgerçekleştirmek için yeterli bellek olmadığında döndürdü.

Açıklamalar

sp_trace_generateevent olan bir Microsoft SQL Server 2000 saklı yordam önceden yürütülen eylemlerin çoğunu gerçekleştiren xp_trace_ * genişletilmiş saklı yordamları önceki sürümlerinde kullanılabilen SQL Server.Use sp_trace_generateevent yerine xp_trace_generate_event.

Yalnızca kullanıcı tanımlı olaylarını kimlik numaraları ile kullanılabilir sp_trace_generateevent.SQL Serverdiğer olay kimliği numaraları yeniden kullanılır, hata yükseltecektir.

Tüm SQL izleme parametrelerini saklı yordamlar (sp_trace_xx) kesinlikle yazılı.Bu parametreler bağımsız açıklamasında belirtildiği gibi doğru giriş parametresi veri türleriyle adlandırılırlar değil, saklı yordam bir hata döndürür.

İzinler

Kullanıcı alter trace izni olmalıdır.

Örnekler

Aşağıdaki örnek, kullanıcı tarafından yapılandırılabilen olay bir örnek tablooluşturur.

--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')