2014-11-18 16 views
5

Tôi đang gửi email từ SQL Server và cần ánh xạ các giá trị của cột sent_status trên bảng msdb.dbo.sysmail_mailitems đến một cái gì đó mang tính mô tả hơn.ý nghĩa của các giá trị của sent_status trên msdb.dbo.sysmail_mailitems

Cho đến nay tôi đã xác định được hai giá trị:

  • 1 = 'Bị'
  • 2 = 'Không'

Có bất kỳ giá trị hơn càng tốt, và nếu như vậy những gì họ làm đại diện?

Trả lời

11
sent_status, --0 new, not sent, 1 sent, 2 failure or 3 retry. 
+0

hoàn hảo, cảm ơn! – ratlab

+0

Nguồn thông tin này là gì? Tôi không thể tìm thấy nó trong tài liệu chính thức. –

5

On the MSDN page cho msdb.dbo.sysmail_allitems bảng liên quan, mô tả cho sent_status nói:

Tình trạng của bưu điện. Giá trị có thể là:

đã gửi - Thư đã được gửi.

chưa gửi - Thư cơ sở dữ liệu vẫn đang cố gắng gửi thư.

thử lại - Thư cơ sở dữ liệu không gửi được tin nhắn nhưng là cố gắng gửi lại.

không thành công - Thư cơ sở dữ liệu không thể gửi thư.

Kết nối hai quan điểm với nhau như sau:

SELECT DISTINCT mi.sent_status, ai.sent_status 
FROM 
    msdb.dbo.sysmail_allitems ai 
    FULL OUTER JOIN 
    msdb.dbo.sysmail_mailitems mi ON 
     ai.mailitem_id = mi.mailitem_id 

sẽ mang lại một mối quan hệ, có thể được diễn tả bằng những CASE tuyên bố sau:

SELECT 
    CASE sent_status 
     WHEN 0 THEN 'Unsent' 
     WHEN 1 THEN 'Sent' 
     WHEN 2 THEN 'Failed' 
     WHEN 3 THEN 'Retrying' 
     END AS sent_status_desc 
FROM msdb..sysmail_mailitems 
Các vấn đề liên quan