sql server通过电子邮件发送输出消息

问题描述:

我一直在运行一个存储过程,它运行多个单独的更新和插入语句。它还打印一些我可以在sql管理工作室中看到的状态消息。我将自动执行此过程以便在一夜之间运行,但需要将输出作为最终检查发送给我。sql server通过电子邮件发送输出消息

我知道如何使用电子邮件存储过程并使其工作,但无法找到消息输出的位置(即受影响的10行)......都已存储。

像'10行参考消息影响”或打印输出都直接发送到客户端,你不能捕捉到它在Transact-SQL。但是,如果您是CLR过程,则可以将作为客户端,在这种情况下,您将从您调用的过程中获取所有输出。需要SQL Server 2005或更新的CLR。

更好的选择是让程序创建一个真正的输出,如行集结果或输出参数。

您可以将输出总是存储在表

exec master..xp_sendmail  
@recipients = '[email protected]',  
@subject = 'my alert'.  
@query = 'select * from mytable'  
+0

您将不得不在服务器上设置SQL Mail以使其工作。 – 2009-07-22 14:52:19

你不能从T-SQL信息的消息。

PRINT @WIDELOAD