Share via


xp_startmail (Transact-SQL)

SQL Mail クライアント セッションを起動します。メール セッションを起動すると MAPI クライアント コンポーネントが開き、電子メール サーバーにログオンします。

注意

この機能は、将来のバージョンの Microsoft SQL Server では削除される予定です。新しい開発作業では、この機能の使用を避け、現在この機能を使用しているアプリケーションは修正するようにしてください。

トピック リンク アイコンTransact-SQL 構文表記規則

構文

xp_startmail [ [ @user= ] 'mapi_profile_name' ]
     [ , [ @password= ] 'mapi_profile_password' ] 

引数

  • [ @user = ] 'mapi_profile_name'
    メール プロファイル名を指定する省略可能なパラメータです。mapi_profile_nameのデータ型は sysname で、既定値はありません。このパラメータを指定しないと、Microsoft Outlook に構成されている既定値が使用されます。

  • [ @password = ] 'mapi_profile_password'
    指定した mapi_profile_name のメール パスワードを指定します。mapi_profile_password のデータ型は sysname で、既定値はありません。xp_startmail を実行する前に、同じコンピュータでメール クライアントを起動した場合は、NULL 値が許可されます。

戻り値

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

結果セット

xp_startmail は、次のメッセージを返します。

SQL mail session started.

説明

mapi_profile_name および mapi_profile_password を指定すると、SQL Server では、プロファイル名とパスワードを使用して MAPI プロバイダへのログオンが試行されます。mapi_profile_name および mapi_profile_password を指定しても、それが間違っている場合はエラー メッセージが返されます。mapi_profile_name および mapi_profile_password を指定しないと、[SQL Mail の構成] ダイアログ ボックスで指定したプロファイル名とパスワードが使用されます。プロファイル名とパスワードを明示的に指定しないと、SQL Server では、既定の MAPI プロファイルを使用して MAPI プロバイダへのログインが試行されます。MAPI プロバイダが Windows 認証を使用するように構成されている場合、MAPI パスワードは無視されます。

注意

xp_startmail を使用してメール セッションを起動する場合は、ログイン名とパスワードを指定しておくことができます。指定すれば、コマンド プロンプトで入力する必要はなくなります。ただし、別の SQL Mail が実行中であると、SQL Mail は既存の MAPI セッション上では実行されません。この動作は SQL Server Version 7.0 以前のバージョンとは異なります。

既存のメール セッションがある場合は、xp_startmail は新しいセッションを開始しません。SQL Server を実行しているコンピュータと同じコンピュータでメールを使用している場合は、xp_startmail の実行前、または SQL Server の起動前 (SQL Server の起動時に SQL Mail を自動的に起動するように構成している場合) に、メール クライアントを起動する必要があります。

権限

sysadmin 固定サーバー ロールのメンバシップが必要です。EXECUTE 権限は他のユーザーに与えることもできます。ただしセキュリティ上の理由から、このストアド プロシージャの実行権限は、sysadmin 固定サーバー ロールのメンバだけに制限することをお勧めします。

次の例では、SQL Server が動作する Microsoft Windows アカウントの既定のプロファイルとして Microsoft Outlook に指定されているユーザー名とパスワードを使用してメールを開始します。

USE master;
GO
EXEC xp_startmail;
GO