Send Email using Hotmail/MSN Live/Oulook/Office365 in SQL Server Stored Procedure

In previous section, I introduced how to send email using Yahoo account. In this section, I will introduce how to use your Hotmail/MSN Live/Outlook.com/Office365 account to send email in SQL stored procedure.

Introduction

Hotmail/MSN Live/Outlook.com SMTP server address is smtp.live.com. It requires TLS connection to do user authentication, and you should use your Hotmail/MSN Live/Outlook.com email address as the user name for ESMTP authentication. For example: your email is liveid@hotmail.com, and then the user name should be liveidmyid@hotmail.com.

Server Port SSL/TLS
smtp.live.com 25, 587 TLS

Note

Remarks: All of samples in this section are based on first section: Send email in a simple SQL stored procedure. To run the following example codes successfully, please click here to learn how to create the test enivronment and use EASendMail in your project.

[SQL Stored Procedure Example - Send email using Hotmail/MSN Live account over TLS connection]

The following example codes demonstrate how to use EASendMail SMTP component to send email using Hotmail/MSN Live account.

Note

To get the full sample projects, please refer to Samples section.

/* Hotmail SMTP server address */
DECLARE @ServerAddr nvarchar(128)
Set @ServerAddr = 'smtp.live.com'

/* Set your Hotmail email address */
DECLARE @From nvarchar(128)
Set @From = 'liveid@hotmail.com'

DECLARE @To nvarchar(1024)
/*You can input multiple recipients and use comma (,) to separate multiple addresses */
Set @To = 'support@emailarchitect.net'

DECLARE @Subject nvarchar(256)
Set @Subject = 'simple email from Hotmail/MSN Live account'

DECLARE @Bodytext nvarchar(512)
Set @BodyText = 'This is a test text email from MS SQL server with Hotmail, do not reply.'

/* For example: your email is "liveid@hotmail.com", then the user should be "liveid@hotmail.com" */
DECLARE @User nvarchar(128)
Set @User = 'liveid@hotmail.com'
DECLARE @Password nvarchar(128)
Set @Password = 'yourpassword'

/* Enable SSL/TLS */
DECLARE @SSL int
Set @SSL = 1

/* Because Live Server deploys SMTP server on 25/587 port with TLS connection.
  So we should change the port to 25 or 587. */
DECLARE @Port int
Set @Port = 587

PRINT 'start to send email ...'
exec usp_SendTextEmail @ServerAddr, @From, @To, @Subject, @BodyText, @User, @Password, @SSL, @Port

Send Email using Office 365

First of all, you should go to Office 365 “Outlook” -> “Options” -> “See All Options” -> “Account” -> “My Account” -> “Settings for POP, IMAP, and SMTP access”. You will get your Office 365 SMTP server address and port. Then you can use your Office 365 SMTP server, port, user/password in the codes.

By default, Office 365 SMTP server uses 587 port and explicit SSL (TLS) connection.

Server Port SSL/TLS
smtp.office365.com 25, 587 (recommended) TLS

[SQL Stored Procedure Example - Send email using Office365 account over TLS connection]

The following example codes demonstrate how to use EASendMail SMTP component to send email using Office 365 account.

Note

To get the full sample projects, please refer to Samples section.

/* office365 SMTP server address */
DECLARE @ServerAddr nvarchar(128)
Set @ServerAddr = 'smtp.office365.com'

/* Set your office365 email address */
DECLARE @From nvarchar(128)
Set @From = 'myid@mydomain'

DECLARE @To nvarchar(1024)
/*You can input multiple recipients and use comma (,) to separate multiple addresses */
Set @To = 'support@emailarchitect.net'

DECLARE @Subject nvarchar(256)
Set @Subject = 'simple email from Office365 account'

DECLARE @Bodytext nvarchar(512)
Set @BodyText = 'This is a test text email from MS SQL server with Office365, do not reply.'

/* For example: your email is "myid@mydomain", then the user should be "myid@mydomain" */
DECLARE @User nvarchar(128)
Set @User = 'myid@mydomain'
DECLARE @Password nvarchar(128)
Set @Password = 'yourpassword'

/* Enable SSL/TLS */
DECLARE @SSL int
Set @SSL = 1

/* Use 587 port */
DECLARE @Port int
Set @Port = 587

PRINT 'start to send email ...'
exec usp_SendTextEmail @ServerAddr, @From, @To, @Subject, @BodyText, @User, @Password, @SSL, @Port

Next Section

At next section I will introduce how to send email without specified SMTP server.

Appendix

Comments

If you have any comments or questions about above example codes, please click here to add your comments.