In SQL Server puoi utilizzare sysmail_help_account_sp
stored procedure su msdb
database per recuperare un elenco di tutti gli account di posta elettronica database.
Puoi anche restituire le informazioni sull'account in base al nome o all'ID dell'account.
Esempio
Ecco un esempio da dimostrare.
EXEC msdb.dbo.sysmail_help_account_sp;
Risultato (usando l'output verticale):
account_id | 1 name | DB Admin description | Mail account for admin emails. email_address | [email protected] display_name | DB Automated Mailer replyto_address | [email protected] servertype | SMTP servername | smtp.example.com port | 25 username | NULL use_default_credentials | 0 enable_ssl | 0
Ho elencato i risultati utilizzando l'output verticale in modo da non dover scorrere lateralmente per vedere tutte le colonne.
Nel mio caso, c'è un solo account di posta elettronica database.
Nota che il sysmail_help_account_sp
la procedura memorizzata si trova in msdb
database ed è di proprietà del dbo
schema. Pertanto, dovrai utilizzare la denominazione in tre parti (come nel mio esempio) se msdb
non è il database corrente.
Restituisci un solo account
Anche se ho un solo account di posta del database sul mio sistema, ecco un esempio di come restituire un singolo account.
Come accennato, puoi utilizzare il nome dell'account o il suo ID. Ecco un esempio di restituzione tramite ID account:
EXEC msdb.dbo.sysmail_help_account_sp
@account_id = 1;
Devi fornire l'ID account come int .
Ed ecco un esempio di come restituirlo per nome:
EXEC msdb.dbo.sysmail_help_account_sp
@account_name = 'DB Admin';
Il nome dell'account è sysname .
Account non valido?
Fornire un ID account che non esiste restituisce il seguente errore:
Msg 14606, Level 16, State 1, Procedure msdb.dbo.sysmail_verify_account_sp, Line 33 account id is not valid
Fornire un nome account che non esiste restituisce il seguente errore:
Msg 14607, Level 16, State 1, Procedure msdb.dbo.sysmail_verify_account_sp, Line 42 account name is not valid