xp_findnextmsg (Transact-SQL)
Akzeptiert als Eingabe eine Nachrichten-ID und gibt die nächste Nachrichten-ID als Ausgabe zurück. xp_findnextmsg wird mit sp_processmail verwendet, um die E-Mail im Posteingang von Microsoft SQL Server zu verwalten.
Hinweis: |
---|
Dieses Feature wird in einer zukünftigen Version von Microsoft SQL Server entfernt. Verwenden Sie dieses Feature beim Entwickeln neuer Anwendungen nicht, und planen Sie das Ändern von Anwendungen, in denen es zurzeit verwendet wird. |
Transact-SQL-Syntaxkonventionen
Syntax
xp_findnextmsg [ [ @type= ] type ]
[ , [ @unread_only= ] 'unread_value' ]
[ , [ @msg_id= ] 'message_id' [ OUTPUT ] ]
Argumente
[ @type=] type
Der Nachrichtentyp entsprechend der MAPI-Definition:IP[M|C].Vendorname.subclass
Wenn type den Wert NULL hat, werden mit
IPM
beginnende Nachrichtentypen im Posteingang des Mailclients angezeigt und von xp_findnextmsg gesucht oder gelesen. Nachrichtentypen, die mitIPC
beginnen, werden im Posteingang des Mailclients nicht angezeigt und werden durch Festlegen des type-Parameters gesucht oder gelesen. Der Standardwert ist NULL. SQL Mail unterstützt die NachrichtentypenIPM
undIPC
.
- [ @unread_only=] 'unread_value'
Gibt an, ob nur ungelesene (N'TRUE') Nachrichten berücksichtigt werden. Der Standardwert ist N'FALSE'. Dies bedeutet, dass alle Nachrichten berücksichtigt werden. unread_value ist vom Typ nvarchar(5).
- [ @msg_id = ] 'message_id'
Ein Ein- und Ausgabeparameter; gibt bei der Eingabe die ID der Nachricht als Zeichenfolge an und erhält bei der Ausgabe die ID der nächsten Nachricht als Zeichenfolge. Wenn message_id für die Eingabe den Wert NULL hat, wird standardmäßig die Ausgabe @msg_id zur ID für die zuletzt übermittelte Nachricht im Posteingang. message_id ist vom Datentyp varchar(255) und hat den Standardwert NULL.
- OUTPUT
Wenn angegeben, wird message_id in den Ausgabeparameter platziert. Wenn nicht angegeben, wird message_id als einspaltiges und einzeiliges Resultset zurückgegeben.
Rückgabecodewerte
0 (Erfolg) oder 1 (Fehler)
Resultsets
xp_findnextmsg gibt eine Nachricht zurück, wenn eine gültige Nachrichten-ID übergeben wird.
Wenn @msg_id den Wert NULL hat, gibt xp_findnextmsg das folgende Resultset zurück:
Spaltenname | Datentyp | Beschreibung |
---|---|---|
Die Meldungs-ID |
varchar(255) |
Die Nachrichten-ID der nächsten Nachricht. |
Hinweise
Jeder Fehler, außer einem ungültigen Parameter, wird im Microsoft Windows-Anwendungsprotokoll aufgezeichnet.
Berechtigungen
Erfordert die Mitgliedschaft in der festen Serverrolle sysadmin, EXECUTE-Berechtigungen können jedoch auch anderen Benutzern erteilt werden. Aus Sicherheitsgründen wird jedoch empfohlen, die Berechtigungen für diese gespeicherte Prozedur auf Mitglieder der festen Serverrolle sysadmin zu beschränken.
Beispiele
Im folgenden Beispiel wird der Status bei der Suche nach der nächsten Nachrichten-ID zurückgegeben (nur ungelesene Nachrichten). Der Wert von xp_findnextmsg
wird in die lokale Variable @message_id
platziert.
DECLARE @status int, @message_id varchar(255) ;
EXEC @status = xp_findnextmsg @msg_id = @message_id OUTPUT ;
Siehe auch
Verweis
sp_processmail (Transact-SQL)
Gespeicherte Systemprozeduren (Transact-SQL)
xp_deletemail (Transact-SQL)
xp_readmail (Transact-SQL)
xp_sendmail (Transact-SQL)
xp_startmail (Transact-SQL)
xp_stopmail (Transact-SQL)