В SQL Server можете да използвате sysmail_help_queue_sp
съхранена процедура в msdb
база данни, за да видите колко пощенски елементи са в опашката, състоянието на опашката и кога е била последно активирана.
Има два типа опашка:опашка за поща и опашка за състояние.
Можете също да върнете информация за акаунта въз основа на типа на опашката.
Върнете всички елементи в опашката
За да върнете всички елементи от опашката, просто изпълнете съхранената процедура без никакви параметри.
EXEC msdb.dbo.sysmail_help_queue_sp;
Резултат (с помощта на вертикален изход):
-[ 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
Изброих резултатите, използвайки вертикално извеждане, така че да не се налага да превъртате настрани, за да видите всички колони.
В моя случай има два пощенски елемента в опашката и така се връщат два реда.
last_empty_rowset_time
колоната предоставя датата и часа, когато опашката за последно е била празна.
last_activated_time
колоната предоставя датата и часа на последното активиране на опашката.
Имайте предвид, че sysmail_help_queue_sp
съхранената процедура е в msdb
база данни и е собственост на dbo
схема. Следователно, ще трябва да използвате именуване от три части, ако msdb
не е текущата база данни.
Филтриране по тип на опашката
Както споменахме, има два типа опашка (поща и статус). Можете също да върнете елементи въз основа на техния тип на опашката.
За да направите това, предоставете @queue_type
параметър и посочете желания тип на опашката.
За да върнете всички артикули от поща опашка:
EXEC msdb.dbo.sysmail_help_queue_sp
@queue_type = 'mail';
Резултат:
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
За да върнете всички артикули от статуса опашка:
EXEC msdb.dbo.sysmail_help_queue_sp
@queue_type = 'status';
Резултат:
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