sysmail_stop_sp (Transact-SQL)
外部プログラムが使用している Service Broker オブジェクトを停止して、データベース メールを停止します。
構文
sysmail_stop_sp
引数
なし
リターン コード値
0 (成功) または 1 (失敗)
説明
このストアド プロシージャは、msdb データベースにあります。
このストアド プロシージャは、送信メッセージ要求を保持しているデータベース メール キューを停止し、外部プログラムに対する Service Broker のアクティブ化をオフにします。
キューが停止すると、データベース メール外部プログラムではメッセージが処理されなくなります。このストアド プロシージャを使用すると、トラブルシューティングやメンテナンスの目的でデータベース メールを停止できます。
データベース メールを開始するには、sysmail_start_sp を使用します。Service Broker オブジェクトが停止していても、sp_send_dbmail では引き続きメールを受け取ることができる点に注意してください。
注意 |
---|
このストアド プロシージャは、データベース メールのキューだけを停止します。データベースでの Service Broker のメッセージ配信は非アクティブになりません。Service Broker のメッセージ配信を非アクティブ化する方法については、「データベースで Service Broker のメッセージ配信を非アクティブ化する方法 (Transact-SQL)」を参照してください。このストアド プロシージャでは、外部からのアクセスを縮小するために、データベース メールの拡張ストアド プロシージャを無効にすることはできません。拡張ストアド プロシージャを無効にする方法については、sp_configure システム ストアド プロシージャの「Database Mail XPs オプション」を参照してください。 |
権限
このプロシージャの実行権限は、既定では sysadmin 固定サーバー ロールのメンバに与えられています。
例
次の例では、msdb データベースでデータベース メールを停止します。ここではデータベース メールが有効になっていることを前提としています。
USE msdb ;
GO
EXECUTE dbo.sysmail_stop_sp ;
GO