次の方法で共有


sysmail_stop_sp (Transact-SQL)

適用対象: SQL サーバー

外部プログラムが使用する Service Broker オブジェクトを停止して、データベース メールを停止します。

Transact-SQL 構文表記規則

構文

sysmail_stop_sp
[ ; ]

引数

[なし] :

リターン コードの値

0 (成功) または 1 (失敗)。

解説

このストアド プロシージャは、 msdb データベースにあります。

sysmail_stop_spは、送信メッセージ要求を保持する データベース メール キューを停止し、外部プログラムの Service Broker のアクティブ化をオフにします。

キューが停止すると、データベース メール外部プログラムはメッセージを処理しません。 このストアド プロシージャを使用すると、トラブルシューティングやメンテナンスの目的でデータベース メールを停止できます。

データベース メールを開始するには、sysmail_start_spを使用します。 Service Broker オブジェクトが停止しても、 sp_send_dbmail は引き続きメールを受け入れることに注意してください。

Note

sysmail_stop_spは、データベース メールのキューのみを停止します。 このストアド プロシージャは、データベース内の Service Broker メッセージ配信を非アクティブ化しません。 このストアド プロシージャは、データベース メール拡張ストアド プロシージャを無効にして、サーフェス領域を減らしません。 拡張ストアド プロシージャを無効にするには、sp_configure システム ストアド プロシージャの データベース メール XPs オプションを参照してください。

アクセス許可

このストアド プロシージャは、 db_owner ロールによって所有されています。 EXECUTEアクセス許可は任意のユーザーに付与できますが、SQL Server のアップグレード中にこれらのアクセス許可がオーバーライドされる可能性があります。

次の例は、msdb データベースでのデータベース メールの停止を示しています。 この例では、データベース メールが有効になっていることを前提としています。

USE msdb;
GO

EXECUTE dbo.sysmail_stop_sp;
GO