How to Remove a Database Mail Account from a Profile in SQL Server (T-SQL)

In SQL Server, you can use the sysmail_delete_profileaccount_sp stored procedure to remove a Database Mail account from a profile.

You can remove the account from a specific profile, or you can remove it from all profiles. You can also remove all accounts from a given profile.

The way it works is, you provide two arguments; the account name or its ID, and the profile name or its ID. If you omit the argument for the profile, the account is removed from all profiles. If you omit the argument for the account, then all accounts are removed from the profile.

Continue reading

Send Emails with Attachments in SQL Server (T-SQL)

SQL Server provides us with the ability to send emails via its Database Mail solution. This includes a bunch of stored procedures that facilitate the configuration and sending of emails.

To send an email, use the sp_send_dbmail stored procedure. This procedure accepts a bunch of optional arguments, one of which allows you to send attachments.

Actually, there are two arguments that enable you to send attachments. The one you use will depend on the context.

They are:

  • @file_attachments – Allows you to specify a file to attach to the email.
  • @attach_query_result_as_file – This is only applicable if you’re also using @query to email the results of a query.

Examples below.

Continue reading

How to Increase the Allowable Attachment Size When Sending Email in SQL Server (T-SQL)

When you use Database Mail to send emails with attachments, you’ll need to ensure that the attachment file size is within the allowable attachment file size.

If you need to send attachments that are larger than the attachment limit, you’ll need to increase that limit.

Fortunately, increasing the allowed attachment file size can be done with a single line of T-SQL code.

Continue reading

How to Email the Results of a Query in SQL Server (T-SQL)

SQL Server provides an easy way to email the results of a query to yourself (or to someone else).

To send email with T-SQL, you need to use the sp_send_dbmail stored procedure in the msdb database. This procedure accepts many arguments, one of which is the @query argument. That’s the argument that attaches the results of your query to the email.

Continue reading

Grant an msdb User Access to a Database Mail Profile in SQL Server (T-SQL)

To send email using Database Mail in SQL Server, a user must be a member of the DatabaseMailUserRole in the msdb database, and have access to at least one Database Mail profile.

To grant a user access to a Database Mail profile with T-SQL, use the sysmail_add_principalprofile_sp stored procedure in the msdb database.

Continue reading