Compartir a través de


sysmail_add_profileaccount_sp (Transact-SQL)

Se aplica a:SQL Server

Agrega una cuenta del Correo electrónico de base de datos al perfil del Correo electrónico de base de datos. Ejecute sysmail_add_profileaccount_sp después de crear una cuenta de base de datos con sysmail_add_account_sp (Transact-SQL) y se cree un perfil de base de datos con sysmail_add_profile_sp (Transact-SQL).

Convenciones de sintaxis de Transact-SQL

Sintaxis

sysmail_add_profileaccount_sp { [ @profile_id = ] profile_id | [ @profile_name = ] 'profile_name' } ,
    { [ @account_id = ] account_id | [ @account_name = ] 'account_name' }
    [ , [ @sequence_number = ] sequence_number ]
[ ; ]

Argumentos

[ @profile_id = ] profile_id

Identificador de perfil al que se va a agregar la cuenta. @profile_id es int, con un valor predeterminado de NULL. Debe especificarse el @profile_id o el @profile_name .

[ @profile_name = ] 'profile_name'

Nombre de perfil que se agrega a la cuenta. @profile_name es sysname, con un valor predeterminado de NULL. Debe especificarse el @profile_id o el @profile_name .

[ @account_id = ] account_id

Identificador de cuenta que se va a agregar al perfil. @account_id es int, con un valor predeterminado de NULL. Debe especificarse el @account_id o el @account_name .

[ @account_name = ] 'account_name'

Nombre de la cuenta que se va a agregar al perfil. @account_name es sysname, con un valor predeterminado de NULL. Debe especificarse el @account_id o el @account_name .

[ @sequence_number = ] sequence_number

Número de secuencia de la cuenta en el perfil. @sequence_number es int, sin valor predeterminado. El número de secuencia determina el orden en que las cuentas se utilizan en el perfil.

Valores de código de retorno

0 (correcto) o 1 (erróneo).

Comentarios

El perfil y la cuenta ya deben existir. En caso contrario, el procedimiento almacenado devuelve un error.

Observe que este procedimiento almacenado no cambia el número de secuencia de una cuenta ya asociada al perfil especificado. Para obtener más información sobre cómo actualizar el número de secuencia de una cuenta, consulte sysmail_update_profileaccount_sp (Transact-SQL).

El número de secuencia determina el orden en que el Correo electrónico de base de datos utiliza las cuentas en el perfil. En el caso de un mensaje de correo electrónico nuevo, el Correo electrónico de base de datos se inicia con la cuenta con el número de secuencia más bajo. Si se produce un error en esa cuenta, Correo electrónico de base de datos usa la cuenta con el siguiente número de secuencia más alto, etc., hasta que Correo electrónico de base de datos envíe el mensaje correctamente o se produce un error en la cuenta con el número de secuencia más alto. Si se produce un error en la cuenta con el número de secuencia más alto, el Correo electrónico de base de datos pausa los intentos de enviar el correo durante el período de tiempo configurado en el AccountRetryDelay parámetro de sysmail_configure_sp, inicia el proceso de intentar enviar el correo de nuevo, empezando por el número de secuencia más bajo. Use el AccountRetryAttempts parámetro de sysmail_configure_sp, para configurar el número de veces que el proceso de correo externo intenta enviar el mensaje de correo electrónico mediante cada cuenta del perfil especificado.

Si hay más de una cuenta con el mismo número de secuencia, el Correo electrónico de base de datos solo utiliza una de estas cuentas para un mensaje de correo electrónico determinado. En este caso, el Correo electrónico de base de datos no confirma qué cuenta se va a usar para el número de secuencia o que se vaya a usar la misma cuenta de un mensaje a otro.

El procedimiento sysmail_add_profileaccount_sp almacenado está en la msdb base de datos y es propiedad del esquema dbo . El procedimiento debe ejecutarse con un nombre de tres partes si la base de datos actual no msdbes .

Permisos

Este procedimiento almacenado es propiedad del rol db_owner . Puede conceder EXECUTE permisos para cualquier usuario, pero estos permisos se pueden invalidar durante una actualización de SQL Server.

Ejemplos

En el siguiente ejemplo se asocia el perfil AdventureWorks Administrator a la cuenta Audit Account. La cuenta de auditoría tiene un número de secuencia de 1.

EXEC msdb.dbo.sysmail_add_profileaccount_sp
    @profile_name = 'AdventureWorks Administrator',
    @account_name = 'Audit Account',
    @sequence_number = 1;