Verwenden gespeicherter Prozeduren von SQL Mail

SQL Mail enthält eine Reihe gespeicherter Prozeduren zum Ausführen von Abfragen, Zurückgeben von Resultsets für eine Liste von Empfängern oder Beantworten von E-Mail-Nachrichten, die eine einfache Abfrage oder gespeicherte Prozedur enthalten.

HinweisHinweis

Diese Funktion wird in zukünftigen Versionen von Microsoft SQL Server nicht mehr bereitgestellt. Verwenden Sie diese Funktion beim Entwickeln neuer Anwendungen nicht, und planen Sie das Ändern von Anwendungen, in denen es zurzeit verwendet wird. Zum Versenden von E-Mail-Nachrichten aus SQL Server verwenden Sie Datenbank-E-Mail.

Die folgende Tabelle enthält eine kurze Beschreibung der erweiterten Prozeduren und ihrer möglichen Verwendung.

SQL Mail-Prozeduren

Funktion

xp_startmail (Transact-SQL)

Startet SQL Mail. Beachten Sie, dass Prozeduren, die SQL Mail verwenden, SQL Mail gegebenenfalls auch starten.

xp_stopmail (Transact-SQL)

Beendet SQL Mail.

xp_findnextmsg (Transact-SQL)

Ermittelt standardmäßig die zuletzt übermittelte E-Mail-Nachricht im Posteingang und gibt eine eindeutige Nachrichten-ID zurück. Die Prozedur wird auch von sp_processmail verwendet, um E-Mail im SQL Mail-Posteingang zu verarbeiten. xp_findnextmsg akzeptiert eine Nachrichten-ID als Eingabe und gibt die Nachrichten-ID der nächsten Nachricht als Ausgabe zurück.

xp_readmail (Transact-SQL)

Akzeptiert eine Nachrichten-ID als Eingabe und gibt die mit der Nachricht verbundenen Informationen als Ausgabe zurück, wie z. B. den Betreff der E-Mail-Nachricht. (Sie können xp_findnextmsg zum Generieren dieser ID verwenden.) Die Prozedur wird auch von sp_processmail verwendet.

xp_deletemail (Transact-SQL)

Akzeptiert eine Nachrichten-ID als Eingabe und entfernt die zugehörige Nachricht aus dem Posteingang. (Sie können xp_findnextmsg zum Generieren dieser ID verwenden.) Die Prozedur wird auch von sp_processmail verwendet.

xp_sendmail (Transact-SQL)

Akzeptiert verschiedene erforderliche Parameter (z. B. Empfänger, Nachrichten, Betreff und Abfragen), sodass die E-Mail-Nachricht erstellt werden kann. Die Prozedur wird auch von sp_processmail oder als Teil einer gespeicherten Prozedur oder eines Triggers verwendet. Sie sendet eine Nachricht mit einer Anlage, die das Resultset der Abfrage enthält, an die angegebenen Empfänger.

sp_processmail (Transact-SQL)

Verwendet erweiterte gespeicherte Prozeduren (xp_findnextmsg, xp_readmail und xp_deletemail), um eingehende E-Mail-Nachrichten zu verarbeiten (bei denen es sich nur um eine Abfrage handeln darf), und verwendet xp_sendmail, um das Resultset an den Absender zurückzugeben. Sie muss als regelmäßig geplanter Auftrag eingerichtet werden, um den SQL Mail-Posteingang auf erhaltene Mails überprüfen zu können.

SicherheitshinweisSicherheitshinweis

Zur Verbesserung der Sicherheit sollten Sie die Berechtigungen für alle gespeicherten Prozeduren von SQL Mail und für erweiterte gespeicherten Prozeduren auf Mitglieder der festen Serverrolle sysadmin beschränken.

Siehe auch

Konzepte