In SQL Server können Sie den sysmail_help_account_sp verwenden gespeicherte Prozedur in der msdb Datenbank, um eine Liste aller Datenbank-E-Mail-Konten abzurufen.
Sie können Kontoinformationen auch basierend auf dem Kontonamen oder der ID zurückgeben.
Beispiel
Hier ist ein Beispiel zur Veranschaulichung.
EXEC msdb.dbo.sysmail_help_account_sp; Ergebnis (bei vertikaler Ausgabe):
account_id | 1 name | DB Admin description | Mail account for admin emails. email_address | example@sqldat.com display_name | DB Automated Mailer replyto_address | example@sqldat.com servertype | SMTP servername | smtp.example.com port | 25 username | NULL use_default_credentials | 0 enable_ssl | 0
Ich habe die Ergebnisse mit vertikaler Ausgabe aufgelistet, damit Sie nicht seitwärts scrollen müssen, um alle Spalten zu sehen.
In meinem Fall gibt es nur ein Datenbank-E-Mail-Konto.
Beachten Sie, dass die Datei sysmail_help_account_sp gespeicherte Prozedur befindet sich in der msdb Datenbank und gehört dbo Schema. Daher müssen Sie die dreiteilige Benennung (wie in meinem Beispiel) verwenden, wenn msdb ist nicht die aktuelle Datenbank.
Nur ein Konto zurückgeben
Obwohl ich nur ein Datenbank-E-Mail-Konto auf meinem System habe, ist hier ein Beispiel dafür, wie man ein einzelnes Konto zurückgibt.
Wie bereits erwähnt, können Sie den Kontonamen oder seine ID verwenden. Hier ist ein Beispiel für die Rückgabe nach Konto-ID:
EXEC msdb.dbo.sysmail_help_account_sp
@account_id = 1; Sie müssen die Konto-ID als int angeben .
Und hier ist ein Beispiel für die Rückgabe nach Namen:
EXEC msdb.dbo.sysmail_help_account_sp
@account_name = 'DB Admin'; Der Kontoname ist sysname .
Konto nicht gültig?
Die Angabe einer nicht vorhandenen Konto-ID gibt den folgenden Fehler zurück:
Msg 14606, Level 16, State 1, Procedure msdb.dbo.sysmail_verify_account_sp, Line 33 account id is not valid
Die Angabe eines Kontonamens, der nicht existiert, gibt den folgenden Fehler zurück:
Msg 14607, Level 16, State 1, Procedure msdb.dbo.sysmail_verify_account_sp, Line 42 account name is not valid