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