SQL Server中发送邮件的新方式

2016-01-29 16:45 47 1 收藏

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

【 tulaoshi.com - SQLServer 】

 在.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对象。

来源:http://www.tulaoshi.com/n/20160129/1499475.html

延伸阅读
标签: Java JAVA基础
  vishal_donth gave this response on 10/18/2000:   //these are the pakages to be imported from   // Java Mail   //The Java Mail PAckage either be dowloaded   //seperately   //or else is Available in the J2sdkee1.2   // (Java Enterprise Edition) &nbs...
标签: ASP
  这个功能要装上WINDOWS NT OPTON PACK 的SMTP SERVICE。 首先 Set mail = Server.CreateObject("CDONTS.NewMail")以呼叫SMTP Service的元件,然后设定: mail.To = "收件者E-Mail地址" mail.From = "寄件者的E-Mail地址" mail.Subject = "主旨" mail.Body = "E-mail内文" 最后Mail.S...
标签: PHP
  最近做一个新闻系统,为了模仿各大网站的在线发信功能就写了这个小程序,希望对各位菜鸟兄弟有用。     我没有给出一部分代码,只给出关键部分。其中shouxin代表收信人地址,shouren代表收信人姓名,jixin代表发信人地址,faren代表发信人姓名。id是前边传过来的参数,对你来说根本没什么用的。 <? if($shou...
钉钉如何查看聊天中发送的图片?   电脑客户端无图片的汇总,可以手机客户端,查看图片汇总;
数据库是电子商务、金融以及ERP系统的基础,通常都保存着重要的商业伙伴和客户信息。大多数企业、组织以及政府部门的电子数据都保存在各种数据库中,他们用这些数据库保存一些个人资料,比如员工薪水、个人资料等等。数据库服务器还掌握着敏感的金融数据。包括交易记录、商业事务和帐号数据,战略上的或者专业的信息,比如专利和工程数据,...

经验教程

917

收藏

57
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部