xp_logevent (języka Transact-SQL)
Dzienniki wiadomości zdefiniowane przez użytkownika w SQL Server pliku dziennika w Podglądzie zdarzeń systemu Windows. xp_logevent może służyć do wysyłania alert bez wysyłania wiadomości do klient.
Składnia
xp_logevent { error_number , 'message' } [ , 'severity' ]
Argumenty
error_number
Błąd zdefiniowany przez użytkownika numer jest większy niż 50 000.Wartość maksymalna jest 2 147 483 647 (2 ^ 31 - 1).'message'
To ciąg znaków z maksymalnie 2048 znaków.'severity'
Jest jednym z trzech ciągi znaków: Do celów informacyjnych, ostrzeżenie lub błąd.severityjest opcjonalna, domyślnie do celów informacyjnych.
Wartości kodów powrotnych
0 (sukces) lub 1 (błąd)
Zestawy wyników
xp_logeventzwraca następujący komunikat o błędzie na przykład kod uwzględniane:
The command(s) completed successfully.
Uwagi
Podczas wysyłania wiadomości z Transact-SQL procedur, wyzwalacze, partii i itd, należy użyć instrukcja RAISERROR zamiast xp_logevent.xp_logeventNie wywołuj obsługi wiadomości klient lub zestaw @@ błędu.Mają być zapisywane w Podglądzie zdarzeń systemu Windows i SQL Serverplikdziennik błędów w wystąpienie SQL Server, wykonać instrukcjaRAISERROR.
Uprawnienia
Wymaga członkostwa w db_owner rola bazy danych w stałej master bazy danych lub członkostwa w sysadmin stała rola serwera.
Przykłady
Poniższy przykład dzienników wiadomości, ze zmiennymi przekazany do wiadomości w Podglądzie zdarzeń systemu Windows.
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