sql-server – sp_send_dbmail不会发送查询结果

我已经尝试了每个该死的论坛上的每条大道,但无济于事!
需要将已存储在表中的sqlPERF(logspace)的结果通过sp_send_dbmail发送给收件人.

工作的第2步是失败发生的地方.请帮忙!

EXEC msdb.dbo.sp_send_dbmail
@profile_name= 'MyDBA',@recipients= 'Mack@mydba.co.za',@subject='Log Warning',@query='SELECT * from #TempForLogSpace WHERE LogSpaceUsed >80

解决方法

您无法使用数据库邮件从临时表进行查询.您用于创建临时表的会话(我假设您的工作的第1步)已关闭,并且在第2步启动时启动了新会话.由于会话已关闭,因此表已被删除(即使表尚未被删除,因为它是新会话,您无权访问其他会话临时表).

要么创建一个物理表并使用它(在tempdb数据库数据库中),要么在@query中使用select * from #TempForLogSpace将创建输出代码放在最后(存储过程将更容易处理)在这种情况下).

相关文章

SELECT a.*,b.dp_name,c.pa_name,fm_name=(CASE WHEN a.fm_n...
if not exists(select name from syscolumns where name=&am...
select a.*,pano=a.pa_no,b.pa_name,f.dp_name,e.fw_state_n...
要在 SQL Server 2019 中设置定时自动重启,可以使用 Window...
您收到的错误消息表明数据库 'EastRiver' 的...
首先我需要查询出需要使用SQL Server Profiler跟踪的数据库标...