Как создать открытый профиль компонента Database Mail (язык Transact-SQL)
Открытые профили компонента Database Mail можно создать с помощью мастера настройки компонента или хранимых процедур этого компонента. Открытый профиль дает возможность всем пользователям получать доступ к базе данных msdb, отправив туда почтовое сообщение из этого профиля.
Чтобы создать открытый профиль компонента Database Mail с помощью инструкций языка Transact-SQL
Создайте одну или несколько учетных записей компонента Database Mail для профиля. Дополнительные сведения о создании учетных записей компонента Database Mail см. в разделе Как создавать учетные записи для компонента Database Mail (язык Transact-SQL).
Выполните хранимую процедуру msdb.dbo.sysmail_add_profile_sp для создания профиля, указав следующее:
имя создаваемого профиля;
необязательное описание профиля.
Для каждой учетной записи выполните процедуру msdb.dbo.sysmail_add_profileaccount_sp, чтобы добавить учетную запись к профилю.
Обеспечьте общий доступ к профилю, выполнив процедуру msdb.sysmail_add_principalprofile_sp со значением public параметра @principal_name или со значением 0 параметра @principal_id.
Пример
Ниже приведен пример создания учетной записи и профиля компонента Database Mail. Затем в этом примере учетная запись добавляется к профилю, доступ к которому разрешается всем пользователям базы данных msdb.
-- Create a Database Mail account
EXECUTE msdb.dbo.sysmail_add_account_sp
@account_name = 'AdventureWorks Public Account',
@description = 'Mail account for use by all database users.',
@email_address = 'db_users@Adventure-Works.com',
@replyto_address = 'danw@Adventure-Works.com',
@display_name = 'AdventureWorks Automated Mailer',
@mailserver_name = 'smtp.Adventure-Works.com' ;
-- Create a Database Mail profile
EXECUTE msdb.dbo.sysmail_add_profile_sp
@profile_name = 'AdventureWorks Public Profile',
@description = 'Profile used for administrative mail.' ;
-- Add the account to the profile
EXECUTE msdb.dbo.sysmail_add_profileaccount_sp
@profile_name = 'AdventureWorks Public Profile',
@account_name = 'AdventureWorks Public Account',
@sequence_number =1 ;
-- Grant access to the profile to all users in the msdb database
EXECUTE msdb.dbo.sysmail_add_principalprofile_sp
@profile_name = 'AdventureWorks Public Profile',
@principal_name = 'public',
@is_default = 1 ;
См. также