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

SQL Server(T-SQL)で未送信メールを確認する

    SQL Serverから電子メールを送信する場合、sysmail_unsentitemsを使用して未送信のメールを確認できます。 ビュー。

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

    SELECT * FROM msdb.dbo.sysmail_unsentitems;

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

    mailitem_id                 | 4
    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 04:11:19.300
    send_request_user           | sa
    sent_account_id             | NULL
    sent_status                 | unsent
    sent_date                   | NULL
    last_mod_date               | 2020-08-24 04:11:19.300
    last_mod_user               | sa

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

    この場合、未送信のメールが1通あります。 msdb.dbo.sp_send_dbmailを実行した直後に、たまたまこのクエリを実行しました このメールを送信します。

    結局のところ、上記の結果をコピーした直後にメールが送信されましたが、そのクエリを再度実行すると、結果はゼロになります(つまり、未送信のメールはありません)。

    SELECT * FROM msdb.dbo.sysmail_unsentitems;

    結果:

    (0 rows affected)

    ただし、未送信のメールがないからといって、失敗したメールがないわけではありません。

    sysmail_faileditemsをクエリできます 失敗した電子メールのリストを返します。

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

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


    1. MySQLを使用したSpringBootCRUDの例

    2. PostgreSQLデータベースの作成

    3. OracleDatabaseのPL/SQLコレクション方式の概要

    4. SQLServerの「IDENTITYをデータ型に変換する算術オーバーフローエラー…」を修正しました