xp_logevent (Transact-SQL)
Logs a user-defined message in the SQL Server log file and in the Windows Event Viewer.xp_logevent can be used to send an alert without sending a message to the client.
xp_logevent { error_number , 'message' } [ , 'severity' ]
Bağımsız değişkenler
error_number
50.000 Daha büyük bir kullanıcı tarafından tanımlanan hata sayısıdır.Değeri en fazla 2147483647 olabilir (2 ^ 31 - 1).'message'
Bir karakter dizesini en çok 2048 karakter ile belirtilir.'severity'
Üç karakter dizelerinden biri mi: INFORMATIONAL, WARNING, or ERROR.severity is optional, with a default of INFORMATIONAL.
Dönüş Kodu Değerleri
0 (başarılı) veya 1 (hata)
Sonuç Kümeleri
xp_logevent bulunan kod örneği için aşağıdaki hata iletisini döndürür:
The command(s) completed successfully.
Remarks
When you send messages from Transact-SQL procedures, triggers, batches, and so on, use the RAISERROR statement instead of xp_logevent.xp_logevent does not call a message handler of a client or set @@ERROR.Iletilerin Windows Olay görüntüleyiciyi ve çok yazmak için SQL Server hata günlüğü dosyası içinde örnek SQL Server, RAISERROR deyim yürütmek.
İzinler
Üyelik ana veritabanındaki db_owner sabit veritabanı rolü veya sysadmin sabit sunucu rolü üyeliği gerekir.
Örnekler
Aşağıdaki örnek, Windows Olay görüntüleyiciyi iletisinde aktarılan değişkenleri ile iletinin kütüğe kaydeder.
DECLARE @@TABNAME varchar(30)
DECLARE @@USERNAME varchar(30)
DECLARE @@MESSAGE varchar(255)
SET @@TABNAME = 'customers'
SET @@USERNAME = USER_NAME()
SELECT @@MESSAGE = 'The table ' + @@TABNAME + ' is not owned by the user
' + @@USERNAME + '.'
USE master
EXEC xp_logevent 60000, @@MESSAGE, informational