Pros and Cons of SQL Server Database Mail I'm planning to use SQL Server Database Mail.

I'll have a table where mail receiver details and mail content is stored and I want to schedule this mailer (every minute) to send mails to the new receiver records added to this table.

I would like to know pros and cons from the experts who already have used, or are aware of, this Database Mail feature.  Is this the correct system for sending mails, or is there better options to send mails from SQL Server?

Update: Above mentioned table is a kind of queue table for mails to be sent. There are many operations going on in the application and all these operations need to send mail once each transaction is complete. Hence, they store that information in this table. Later on, at every minute, we retrieve data from this table and send mails accordingly, marking that record as sent. I hope this better clarifies my requirements.
Why would you build a table to log the emails into, then have another process come through and read the emails from the table in order to send them via database mail.

Why not just modify your application to send the emails directly via database mail.

Database mail uses SQL Service Broker under the covers to handle the email sending.  When you tell it to send an email it drops the email into a queue, then a background process comes through and grabs the email and actually sends it.  In your current design:


You drop the message into a table
A process reads the email
That process sends it to database mail
Database mail puts it into a queue
Database mail reads from the queue and sends the email


Why not remove steps 1, 2 and 3 from the process.