Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
van toepassing op:SQL Server-
Registreert een door de gebruiker gedefinieerd bericht in het SQL Server-logboekbestand en in het Windows-gebeurtenislogboek.
xp_logevent kan worden gebruikt om een waarschuwing te verzenden zonder een bericht naar de client te verzenden.
Transact-SQL syntaxisconventies
Syntaxis
xp_logevent { error_number , 'message' } [ , 'severity' ]
Argumenten
Belangrijk
Argumenten voor uitgebreide opgeslagen procedures moeten worden ingevoerd in de specifieke volgorde, zoals beschreven in de sectie Syntaxis. Als de parameters niet in de volgorde zijn ingevoerd, treedt er een foutbericht op.
error_number
Een door de gebruiker gedefinieerd foutnummer dat groter is dan 50000. De maximumwaarde is 2147483647 (2^31 - 1).
'bericht'
Een tekenreeks met maximaal 2048 tekens.
'ernst'
Een van de drie tekenreeksen: INFORMATIONAL, WARNINGof ERROR.
ernst is optioneel, met een standaardwaarde van INFORMATIONAL.
Codewaarden retourneren
0 (geslaagd) of 1 (mislukt).
Resultatenset
xp_logevent retourneert het volgende foutbericht voor het opgenomen codevoorbeeld:
The command(s) completed successfully.
Opmerkingen
Wanneer u berichten verzendt vanuit Transact-SQL procedures, triggers, batches enzovoort, gebruikt u de RAISERROR-instructie in plaats van xp_logevent.
xp_logevent roept geen berichthandler van een client aan of stelt @@ERRORin. Als u berichten wilt schrijven naar het Windows-gebeurtenislogboek en naar het SQL Server-foutenlogboekbestand binnen een exemplaar van SQL Server, voert u de RAISERROR-instructie uit.
Machtigingen
Vereist lidmaatschap van de db_owner vaste databaserol in de master-database of lidmaatschap van de sysadmin vaste serverfunctie.
Voorbeelden
In het volgende voorbeeld wordt het bericht logboeken, met variabelen die zijn doorgegeven aan het bericht in De Logboeken van 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;