Freigeben über


srv_sendmsg (API für erweiterte gespeicherte Prozeduren)

Gilt für: SQL Server

Wichtig

Diese Funktion wird in einer zukünftigen Version von SQL Serverentfernt. Nutzen Sie diese Funktionen bei Neuentwicklungen nicht mehr, und planen Sie die Änderung von Anwendungen, die diese Funktion zurzeit verwenden. Verwenden Sie stattdessen die CLR-Integration.

Sendet eine Meldung an den Client.

Syntax

  
int srv_sendmsg (  
SRV_PROC *  
srvproc  
,  
int  
msgtype  
,  
DBINT  
msgnum  
,  
DBTINYINT  
class  
,   
DBTINYINT  
state  
,  
DBCHAR *  
rpcname  
,  
int   
rpcnamelen  
,  
DBUSMALLINT  
linenum  
,  
DBCHAR *  
message  
,  
int  
msglen   
);  

Argumente

srvproc
Ein Zeiger auf die SRV_PROC-Struktur, die das Handle für eine bestimmte Clientverbindung ist (in diesem Fall das Handle, das die Sprachanforderung erhalten hat). Die Struktur enthält Informationen, mit der die API-Bibliothek für erweiterte gespeicherte Prozeduren die Kommunikation und Daten zwischen der Anwendung und dem Client verwaltet.

msgtype
Ist entweder SRV_MSG_INFO oder SRV_MSG_ERROR, je nachdem, ob der Server eine Informations- oder Fehlermeldung sendet.

msgnum
Eine 4-Byte-Meldungsnummer.

class
Gibt den Fehlerschweregrad an. Ein Schweregrad kleiner oder gleich 10 wird als Informationsmeldung betrachtet.

state
Stellt die Fehlerzustandsnummer für die aktuelle Meldung bereit. Die Fehlerzustandsnummer enthält Informationen über den Fehlerkontext. Gültige Zustandsnummern liegen zwischen 0 und 255.

rpcname
Wird derzeit nicht unterstützt.

rpcnamelen
Wird derzeit nicht unterstützt.

linenum
Die Zeilennummer im Sprachbefehlsbatch, für die die Meldung gilt. Die Zeilennummern beginnen bei 1. Legen Sie den Wert auf 0 fest, wenn linenum nicht für die Meldung gilt.

message
Ein Zeiger auf die an den Client zu sendende Zeichenfolge.

msglen
Gibt die Länge von messagein Byte an. Wenn message NULL-terminiert ist, legen Sie für msglen den Wert SRV_NULLTERM fest.

Gibt zurück

SUCCEED oder FAIL

Hinweise

Diese Funktion sendet Fehler- oder Informationsmeldungen an den Client. Sie wird für jede zu sendende Meldung einmal aufgerufen.

Mithilfe von srv_sendmsg können Meldungen in beliebiger Reihenfolge gesendet werden, bevor oder nachdem alle Zeilen (sofern vorhanden) mit srv_sendrowgesendet wurden. Ggf. müssen alle Meldungen an den Client gesendet werden, bevor der Abschlussstatus mit srv_senddonegesendet wird.

Zum Versenden von Meldungen in Unicode verwenden Sie srv_wsendmsg anstelle von srv_sendmsg.

Weitere Informationen finden Sie unter Unicode Data and Server Code Pages (Unicode-Daten und Server Codepages).

Wichtig

Sie sollten den Quellcode der erweiterten gespeicherten Prozeduren sorgfältig prüfen, und Sie sollten die kompilierten DLL-Dateien testen, bevor Sie sie auf einem Produktionsserver installieren. Weitere Informationen zum Überprüfen und Testen der Sicherheit finden Sie auf dieser Microsoft-Website.