sysmail_add_profileaccount_sp (Transact-SQL)
Aggiunge un account di Posta elettronica database a un profilo di Posta elettronica database. Eseguire sysmail_add_profileaccount_sp dopo aver creato un account del database con sysmail_add_account_sp (Transact-SQL) e aver creato un profilo del database con sysmail_add_profile_sp (Transact-SQL).
Sintassi
sysmail_add_profileaccount_sp { [ @profile_id = ] profile_id | [ @profile_name = ] 'profile_name' } ,
{ [ @account_id = ] account_id | [ @account_name = ] 'account_name' }
[ , [ @sequence_number = ] sequence_number ]
Argomenti
[ @profile_id = ] profile_id
ID del profilo a cui aggiungere l'account. profile_id è di tipo int e il valore predefinito è NULL. È necessario specificare profile_id o profile_name.[ @profile_name = ] 'profile_name'
Nome del profilo a cui aggiungere l'account. profile_name è di tipo sysname e il valore predefinito è NULL. È necessario specificare profile_id o profile_name.[ @account_id = ] account_id
ID dell'account da aggiungere al profilo. account_id è di tipo int e il valore predefinito è NULL. È necessario specificare account_id o account_name.[ @account_name = ] 'account_name'
Nome dell'account da aggiungere al profilo. account_name è di tipo sysname e il valore predefinito è NULL. È necessario specificare account_id o account_name.[ @sequence_number = ] sequence_number
Numero di sequenza dell'account nel profilo. sequence_number è di tipo int e non prevede alcun valore predefinito. Il numero di sequenza determina l'ordine in cui gli account vengono utilizzati nel profilo.
Valori restituiti
0 (esito positivo) o 1 (esito negativo)
Osservazioni
Sia il profilo che l'account devono esistere. In caso contrario, la stored procedure restituisce un errore.
Questa stored procedure non modifica il numero di sequenza di un account che è già associato al profilo specificato. Per ulteriori informazioni sull'aggiornamento del numero di sequenza di un account, vedere sysmail_update_profileaccount_sp (Transact-SQL).
Il numero di sequenza determina l'ordine in cui Posta elettronica database utilizza gli account nel profilo. Per un nuovo messaggio di posta elettronica, Posta elettronica database inizia con l'account che presenta il numero di sequenza più basso. Se l'invio del messaggio con tale account ha esito negativo, Posta elettronica database prova con l'account con il numero di sequenza successivo e così via, finché il messaggio non viene inviato o finché anche l'invio con l'account con il numero di sequenza più alto non ha esito negativo. Se l'invio con l'account associato al numero di sequenza più alto ha esito negativo, il tentativo di inviare il messaggio viene sospeso per il periodo di tempo specificato nel parametro AccountRetryDelay di sysmail_configure_sp. Trascorso questo periodo di tempo, Posta elettronica database prova di nuovo a inviare il messaggio, iniziando con l'account con il numero di sequenza più basso. Utilizzare il parametro AccountRetryAttempts di sysmail_configure_sp per configurare il numero di tentativi di invio del messaggio da parte del processo di posta elettronica esterno tramite ogni account indicato nel profilo specificato.
Se esistono più account con lo stesso numero di sequenza, Posta elettronica database utilizzerà uno solo di tali account per un dato messaggio di posta elettronica. In questo caso non è possibile sapere quale degli account corrispondenti al numero di sequenza verrà utilizzato, né sapere se per i vari messaggi verrà utilizzato lo stesso account.
La stored procedure sysmail_add_profileaccount_sp è disponibile nel database msdb ed è di proprietà dello schema dbo. La procedura deve essere eseguita con un nome in tre parti se il database corrente non è msdb.
Autorizzazioni
Le autorizzazioni di esecuzione per questa procedura vengono assegnate per impostazione predefinita ai membri del ruolo predefinito del server sysadmin.
Esempi
Nell'esempio seguente il profilo AdventureWorks Administrator viene associato all'account Audit Account. Il numero di sequenza dell'account è 1.
EXECUTE msdb.dbo.sysmail_add_profileaccount_sp
@profile_name = 'AdventureWorks Administrator',
@account_name = 'Audit Account',
@sequence_number = 1 ;