Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Überprüfen, wie viele E-Mail-Elemente sich in der Warteschlange in Datenbank-E-Mail in SQL Server (T-SQL) befinden

In SQL Server können Sie den sysmail_help_queue_sp verwenden gespeicherte Prozedur in der msdb Datenbank, um zu sehen, wie viele E-Mail-Elemente sich in der Warteschlange befinden, den Status der Warteschlange und wann sie zuletzt aktiviert wurde.

Es gibt zwei Arten von Warteschlangen:die Mail-Warteschlange und die Status-Warteschlange.

Sie können Kontoinformationen auch basierend auf dem Warteschlangentyp zurückgeben.

Alle Elemente in der Warteschlange zurückgeben

Um alle Elemente aus der Warteschlange zurückzugeben, führen Sie einfach die gespeicherte Prozedur ohne Parameter aus.

EXEC msdb.dbo.sysmail_help_queue_sp;

Ergebnis (bei vertikaler Ausgabe):

-[ RECORD 1 ]-------------------------
queue_type             | mail
length                 | 0
state                  | INACTIVE
last_empty_rowset_time | 2020-08-25 22:25:02.637
last_activated_time    | 2020-08-25 22:25:02.637
-[ RECORD 2 ]-------------------------
queue_type             | status
length                 | 0
state                  | INACTIVE
last_empty_rowset_time | 2020-08-25 22:25:02.637
last_activated_time    | 2020-08-25 22:25:02.637

Ich habe die Ergebnisse mit vertikaler Ausgabe aufgelistet, damit Sie nicht seitwärts scrollen müssen, um alle Spalten zu sehen.

In meinem Fall befinden sich zwei E-Mail-Elemente in der Warteschlange, daher werden zwei Zeilen zurückgegeben.

Die last_empty_rowset_time Spalte enthält das Datum und die Uhrzeit, wann die Warteschlange zuletzt leer war.

Die last_activated_time Spalte enthält Datum und Uhrzeit der letzten Aktivierung der Warteschlange.

Beachten Sie, dass die Datei sysmail_help_queue_sp gespeicherte Prozedur befindet sich in der msdb Datenbank und gehört dem dbo Schema. Daher müssen Sie eine dreiteilige Benennung verwenden, wenn msdb ist nicht die aktuelle Datenbank.

Nach Warteschlangentyp filtern

Wie bereits erwähnt, gibt es zwei Arten von Warteschlangen (Mail und Status). Sie können Elemente auch basierend auf ihrem Warteschlangentyp zurückgeben.

Geben Sie dazu den @queue_type an Parameter und geben Sie Ihren gewünschten Warteschlangentyp an.

Um alle Artikel aus der Post zurückzusenden Warteschlange:

EXEC msdb.dbo.sysmail_help_queue_sp
    @queue_type = 'mail';

Ergebnis:

queue_type             | mail
length                 | 0
state                  | INACTIVE
last_empty_rowset_time | 2020-08-25 22:25:02.637
last_activated_time    | 2020-08-25 22:25:02.637

Um alle Artikel aus dem Status zurückzugeben Warteschlange:

EXEC msdb.dbo.sysmail_help_queue_sp
    @queue_type = 'status';

Ergebnis:

queue_type             | status
length                 | 0
state                  | INACTIVE
last_empty_rowset_time | 2020-08-25 22:25:02.637
last_activated_time    | 2020-08-25 22:25:02.637