Condividi tramite


srv_message_handler (API Stored procedure estesa)

Nota importanteImportante

Questa caratteristica verrà rimossa a partire da una delle prossime versioni di Microsoft SQL Server. Non utilizzare questa caratteristica in un nuovo progetto di sviluppo e modificare non appena possibile le applicazioni in cui è attualmente implementata. Utilizzare invece la funzionalità di integrazione con CLR.

Chiama il gestore dei messaggi dell'API Stored procedure estesa installato. Questa funzione viene generalmente utilizzata per chiamare Microsoft SQL Server da una stored procedure estesa per registrare un errore (definito dalla stored procedure estesa) nel file di log degli errori di SQL Server o nel log dell'applicazione Microsoft Windows.

Sintassi


int srv_message_handler (
SRV_PROC *
srvproc
,
int
errornum
,
BYTE 
severity
,
BYTE
state
,
int
oserrnum
,
char *
errtext
,
int
errtextlen
,
char *
oserrtext
,
int
oserrtextlen
);

Argomenti

  • srvproc
    Puntatore alla struttura SRV_PROC che rappresenta l'handle di una determinata connessione client. Il parametro srvproc contiene informazioni utilizzate per gestire le comunicazioni e i dati tra l'applicazione e il client.

  • errornum
    Numero dell'errore definito dalla stored procedure estesa. Questo numero deve essere compreso tra 50.001 e 2.147.483.647.

  • severity
    Valore di gravità di SQL Server standard per l'errore. Questo numero deve essere compreso tra 0 e 24.

  • state
    Valore di stato di SQL Server per l'errore.

  • oserrnum
    Numero dell'errore del sistema operativo. Questo argomento viene ignorato.

  • errtext
    Descrizione dell'errore della stored procedure estesa errornum.

  • errtextlen
    Lunghezza della stringa dell'errore della stored procedure estesa errtext.

  • oserrtext
    Descrizione dell'errore del sistema operativo oserrnum. Questo argomento viene ignorato.

  • oserrtextlen
    Lunghezza della stringa dell'errore del sistema operativo oserrtext.

Valori restituiti

SUCCEED o FAIL.

Osservazioni

La funzione srv_message_handler consente l'integrazione di una stored procedure estesa con le funzionalità di segnalazione e registrazione centralizzate degli errori di SQL Server. È possibile configurare gli avvisi di SQL Server per gli eventi generati da stored procedure estese. Tali condizioni di avviso verranno monitorate da SQL Server Agent.

Se il messaggio di errore è più lungo, viene troncato a 412 byte.

Nota sulla sicurezzaNota sulla sicurezza

È necessario esaminare con attenzione il codice sorgente delle stored procedure estese e testare le DLL compilate prima di installarle in un server di produzione. Per informazioni sui test e sull'analisi di protezione, visitare questo sito Web Microsoft.