Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
platí pro:SQL Server
Zaznamená uživatelem definovanou zprávu v souboru protokolu SQL Serveru a v protokolu událostí systému Windows.
xp_logevent lze použít k odeslání výstrahy bez odeslání zprávy klientovi.
Syntax
xp_logevent { error_number , 'message' } [ , 'severity' ]
Argumenty
Důležitý
Argumenty rozšířených uložených procedur musí být zadány v určitém pořadí, jak je popsáno v části Syntaxe. Pokud jsou parametry zadány mimo pořadí, dojde k chybové zprávě.
error_number
Uživatelem definované číslo chyby větší než 50000. Maximální hodnota je 2147483647 (2^31 –1).
zpráva
Řetězec znaků s maximálně 2048 znaky.
'závažnosti'
Jeden ze tří znaků řetězců: INFORMATIONAL, WARNINGnebo ERROR.
závažnosti je nepovinný s výchozím nastavením INFORMATIONAL.
Návratové hodnoty kódu
0 (úspěch) nebo 1 (selhání).
Sada výsledků
xp_logevent vrátí následující chybovou zprávu pro příklad zahrnutého kódu:
The command(s) completed successfully.
Poznámky
Když odesíláte zprávy z Transact-SQL procedur, triggerů, dávek atd., použijte místo xp_logeventpříkaz RAISERROR .
xp_logevent nevolá obslužnou rutinu zprávy klienta ani @@ERROR. Pokud chcete zapisovat zprávy do protokolu událostí systému Windows a do souboru protokolu chyb SQL Serveru v instanci SQL Serveru, spusťte příkaz RAISERROR.
Dovolení
Vyžaduje členství v db_owner pevné databázové roli v databázi master nebo členství v správce systému pevné role serveru.
Příklady
Následující příklad zaznamená zprávu s proměnnými předanými do zprávy v Prohlížeči událostí systému Windows.
DECLARE @@TABNAME VARCHAR(30),
@@USERNAME VARCHAR(30),
@@MESSAGE VARCHAR(255);
SET @@TABNAME = 'customers';
SET @@USERNAME = USER_NAME();
SELECT @@MESSAGE = 'The table ' + @@TABNAME + ' is not owned by the user
' + @@USERNAME + '.';
USE master;
EXECUTE xp_logevent 60000,
@@MESSAGE, informational;
Související obsah
- PRINT (Transact-SQL)
- RAISERROR (Transact-SQL)
- uložené procedury systému (Transact-SQL)
- Obecné rozšířené uložené procedury (Transact-SQL)