快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

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对象。
返回类别: 教程
上一教程: sql2k中新增加的Function的sqlbook 的帮助
下一教程: 将Excel中的数据导入到SQL Server 2000数据库中

您可以阅读与"SQL Server中发送邮件的新方法"相关的教程:
· SQL SERVER中发送邮件的新方法
· 怎样配置SQL SERVER发送电子邮件
· SQL Server 6六种数据移动方式
· SQL SERVER各种日期计算方式
· SQL SERVER中合并用户日志表的方式
    微笑服务 优质保证 索取样品