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'
答
你不能从T-SQL信息的消息。
答
PRINT @WIDELOAD
您将不得不在服务器上设置SQL Mail以使其工作。 – 2009-07-22 14:52:19