sql >> データベース >  >> RDS >> Sqlserver

SQL Server(T-SQL)で失敗した電子メールを確認する

    SQL Serverでメールを送信しようとしても配信されない場合は、sysmail_faileditemsを確認してみてください。 ビュー。

    失敗したメールをチェックする例を次に示します。 msdbで実行する必要があることに注意してください データベース。

    SELECT * FROM msdb.dbo.sysmail_faileditems;

    結果(垂直出力を使用):

    mailitem_id                 | 1
    profile_id                  | 1
    recipients                  | [email protected]
    copy_recipients             | NULL
    blind_copy_recipients       | NULL
    subject                     | SQL Server Agent Job: FAILED
    body                        | Your favorite SQL Server Agent job just failed
    body_format                 | TEXT
    importance                  | NORMAL
    sensitivity                 | NORMAL
    file_attachments            | NULL
    attachment_encoding         | MIME
    query                       | NULL
    execute_query_database      | NULL
    attach_query_result_as_file | 0
    query_result_header         | 1
    query_result_width          | 256
    query_result_separator      |  
    exclude_query_output        | 0
    append_query_error          | 0
    send_request_date           | 2020-08-24 02:40:48.093
    send_request_user           | sa
    sent_account_id             | NULL
    sent_status                 | failed
    sent_date                   | 2020-08-24 02:41:53.000
    last_mod_date               | 2020-08-24 02:41:53.290
    last_mod_user               | sa

    ここでは、すべての列を表示するために横にスクロールする必要がないように、垂直出力を使用しました。

    この場合、失敗したメールを1通表示しています。実際に失敗したメールは2つありましたが、結果を1つだけ表示する方が簡潔であると判断しました。

    私の場合、メールを送信するコードで間違ったメールサーバーを使用していたため、メールが失敗しました。正しいメールサーバーを使用するようにコードを更新するとすぐに、後続のすべての電子メールが正常に送信されました。ただし、これによってすでに失敗したものは変更されないため、sysmail_faileditemsに残ります。 ビュー。

    sysmail_unsentitemsをクエリできます 未送信の電子メールのリストを返します(まだ送信されていないもので、必ずしも失敗したわけではありません)。

    sysmail_sentitemsをクエリすることもできます 送信されたすべてのメールを取得します。

    sysmail_allitemsをクエリすることもできます すべてのメール(送信済み、未送信、失敗、再試行)を取得します。


    1. 戻りパラメータを使用してHibernateからOracle関数を呼び出す方法は?

    2. PubNub関数のガイド

    3. SQLServerのログオントリガー

    4. CASEステートメントとDECODEは同等ですか?