SQL Serverでは、sysmail_help_profileaccount_spを使用できます。 msdbのストアドプロシージャ データベースを使用して、アカウントとデータベースメールプロファイル間のすべての関連付けのリストを取得します。
アカウント名/IDまたはプロファイル名/IDに基づいてアカウント情報を返すこともできます。
すべての関連付けを返す
すべての関連付けを返すには、パラメータなしでストアドプロシージャを実行するだけです。
EXEC msdb.dbo.sysmail_help_profileaccount_sp; 結果(垂直出力を使用):
profile_id | 1 profile_name | DB Admin Profile account_id | 1 account_name | DB Admin sequence_number | 1
すべての列を表示するために横にスクロールする必要がないように、垂直出力を使用して結果をリストしました。
私の場合、関連付けは1つだけなので、1行だけが返されます。
sysmail_help_profileaccount_spに注意してください ストアドプロシージャはmsdbにあります データベースであり、dboが所有しています スキーマ。したがって、msdbの場合は、3つの部分からなる命名を使用する必要があります 現在のデータベースではありません。
アカウント名/IDに基づく
アカウント名またはIDをパラメーターとして渡すことにより、単一のアカウントに絞り込むことができます。
アカウント名は、sysmail_add_account_spで作成されたアカウントの名前です。 msdbのストアドプロシージャ データベース。
アカウント名を渡す方法は次のとおりです。
EXEC msdb.dbo.sysmail_help_profileaccount_sp
@account_name = 'DB Admin'; IDを渡す方法は次のとおりです:
EXEC msdb.dbo.sysmail_help_profileaccount_sp
@account_id = 1;
@account_idに注意してください intとして提供されます 。
プロファイル名/IDに基づく
または、プロファイル名またはIDをパラメーターとして渡すことにより、単一のプロファイルに絞り込むことができます。
プロファイル名を渡す方法は次のとおりです。
EXEC msdb.dbo.sysmail_help_profileaccount_sp
@profile_name = 'DB Admin Profile'; プロファイルIDを渡す方法は次のとおりです。
EXEC msdb.dbo.sysmail_help_profileaccount_sp
@profile_id = 1;
@profile_idに注意してください intとして提供されます 。