我正在创建一个电子邮件警报,它很可能会被发送到智能手机(电子邮件或短信),并在我们遇到生产问题时用来唤醒人们。使用 EXEC msdb.dbo.sp_send_dbmail 发送电子邮件并提供执行存储过程的 @query 参数。
目前,报告看起来像这样,正如你所看到的,当事情环绕并且不是 Courier 字体时,它们看起来很糟糕。
格式化它的最佳方法是什么?用表格代替 HTML 电子邮件?是否有任何 T-SQL 实用程序可以做到这一点?这可能是 C# 而不是 T-SQL 的工作吗(我也可以编写代码)。
> Rating Airline Feed LocalDateTimeLastMsgRcvd > AlertMinutes CountMessageInLastHour AvgCountPerSameHour > ---------- ---------- ---------------- ------------------------ ------------ ---------------------- ------------------- GOOD ABC Feed1 2012-08-22 07:15 10 > 420 351 BAD ABC ABC-Feed2 > 2012-08-22 07:04 10 48 > 56 GOOD ABC ABC-Feed3 2012-08-22 06:40 > 75 1 1 GOOD DEF > DEF 2012-08-22 07:15 10 > 597 858
我正在考虑三个想法:
1)使用T-SQL将每个元素写入临时表的不同行:
Row=1
Rating=Good
Feed=ABC
LocalDateTimeLastMsgRcvd=2012-08-22 07:04
etc..
.
2) 与上述类似,但使用 XML 包装器
3) 与上面类似,但使用<TR><TD>
包装器来制作 HTML 表格。
我目前在这里查看选项 c:http: //msdn.microsoft.com/en-us/library/ms190307.aspx,它可能适用于大多数智能手机电子邮件,但可能不适用于 SMS。有些人会将其转发到他们的短信。