SQL Server发送电子邮件通知插入表中的数据 - 选项?

Chr*_*non 1 t-sql sql-server stored-procedures database-mail clrstoredprocedure

我有一个SQL Server数据库,它在几个ASP.NET(VB.NET)网站之间共享,数据库有一个存储客户查询的表 - 我希望提供电子邮件通知,通知新的查询以解决组织内部的人员(可能将一些查询数据放入电子邮件正文中).请问有人可以根据如何实施这些方案来概述我的选择吗?

我的想法是:

  1. 的SQLMail
  2. 数据库邮件
  3. 使用System.Net.Mail库的VB.NET存储过程?
  4. 其他选择?

选项3似乎是可取的,因为我知道如何在VB.NET中这样做,这是微不足道的.

  • 我还有什么其他选择?
  • 有什么警告?
  • 我可以实时执行此操作,即触发器(插入量很低)吗?
  • 或者这是批量即工作至关重要的?

任何帮助非常欢迎!谢谢.

Rem*_*anu 5

1),2)和3)之间唯一值得考虑的是2).1)是一个死产,使用一个被弃用的功能因其问题和问题而臭名昭着.3)是一个坏主意,因为它打破了事务一致性(即使插入回滚也发送了SMTP邮件)并且是一个性能损失,因为调用者(可能是你正在呈现的网页)必须等到SMTP交换完成(即.是同步的).只有2)提供事务一致性并且是异步的(在SMTP完成之前不会阻止调用者).

通常,此类任务更好地委派给Reporting Services任务.您将使用电子邮件传递创建数据驱动订阅.这是开箱即用的,无需重新发明轮子.