SQL Server中发送邮件的新方式

koubryant

koubryant

2016-01-29 16:45

SQL Server中发送邮件的新方式,SQL Server中发送邮件的新方式
 在.NET中,大家知道,可以使用System.Web.Mail来发送邮件。在Framework 1.1下支持验证。private void Page_Load(object sender, System.EventArgs e) 
  {
  MailMessage mail = new MailMessage();
  mail.To = "me@mycompany.com";
  mail.From = "you@yourcompany.com";
  mail.Subject = "this is a test email.";
  mail.Body = "Some text goes here";
  mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "1"); //basic authentication
  mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", "my_username_here"); //set your username here
  mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", "super_secret"); //set your password here
  SmtpMail.SmtpServer = "mail.mycompany.com"; //your real server goes here
  SmtpMail.Send( mail );
  }
  以前我曾写过在.NET下发送邮件的方法,详见:
  http://dev.csdn.net/develop/article/17/17189.shtm
  SQL Server中,我们一般使用SQL本身的邮件发送方式,但需要配置Exchage Server、Outlook等,也是一个比较繁琐的事情。很多人抱怨说配置不成功。
  其实,我们可以在 SQL Server中创建 OLE 对象实例,调用IIS SMTP自带的发送组件来实现邮件发送。
  我们建立这个存储过程,你需要修改的地方是,SmtpServer的名字
  Create PROCEDURE sys_sendmail @From varchar(100) , @To varchar(100) , @Bcc varchar(500), @Subject varchar(400)=" ", @Body ntext =" "
  AS
  Declare @object int
  Declare @hr int
  EXEC @hr = sp_OACreate ’CDO.Message’, @object OUT
  EXEC @hr = sp_OASetProperty @object, ’Configuration.fields("http://schemas.microsoft.com/cdo/configuration/sendusing").Value’,’2’
  EXEC @hr = sp_OASetProperty @object, ’Configuration.fields("http://schemas.microsoft.com/cdo/configuration/smtpserver").Value’, ’smtp.163.com’
  --下面三条语句是smtp验证,如果服务器需要验证,则必须要这三句,你需要修改用户名和密码
  EXEC @hr = sp_OASetProperty @object, ’Configuration.fields("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate").Value’,’1’
  EXEC @hr = sp_OASetProperty @object, ’Configuration.fields("http://schemas.microsoft.com/cdo/configuration/sendusername").Value’,’lihonggen0’
  EXEC @hr = sp_OASetProperty @object, ’Configuration.fields("http://schemas.microsoft.com/cdo/configuration/sendpassword").Value’,’xxx’
  EXEC @hr = sp_OAMethod @object, ’Configuration.Fields.Update’, null
  EXEC @hr = sp_OASetProperty @object, ’To’, @To
  EXEC @hr = sp_OASetProperty @object, ’Bcc’, @Bcc
  EXEC @hr = sp_OASetProperty @object, ’From’, @From
  EXEC @hr = sp_OASetProperty @object, ’Subject’, @Subject
  EXEC @hr = sp_OASetProperty @object, ’TextBody’, @Body
  EXEC @hr = sp_OAMethod @object, ’Send’, NULL
  --判断出错
  IF @hr < 0
  BEGIN
  EXEC sp_OAGetErrorInfo @object
  RETURN @object
  END
  PRINT ’success’
  EXEC @hr = sp_OADestroy @object
  GO 注意:必须确保安装Smtp,可以访问CDO对象。
展开更多 50%)
分享

猜你喜欢

SQL Server中发送邮件的新方式

SQLServer
SQL Server中发送邮件的新方式

VisualBasic6中发送邮件的新方法

编程语言 网络编程
VisualBasic6中发送邮件的新方法

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

怎样配置SQL Server发送电子邮件

SQLServer
怎样配置SQL Server发送电子邮件

如何在电子邮箱中发送和接收邮件

电脑入门
如何在电子邮箱中发送和接收邮件

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

sql server中order by部分使用方式

SQLServer
sql server中order by部分使用方式

SQL Server中解决死锁的新方法介绍

SQLServer
SQL Server中解决死锁的新方法介绍

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

全接触sqlserver异常与孤立事务

全接触sqlserver异常与孤立事务

复制表结构的通用存储过程

复制表结构的通用存储过程
下拉加载更多内容 ↓