sp_send_dbmail will not send query results

前端 未结 3 751
挽巷
挽巷 2021-01-02 19:14

I\'ve tried every avenue on every damn forum suggested, but to no avail! Need to send results of SQLPERF(logspace), that have been stored in a table, via sp_send_dbmai

相关标签:
3条回答
  • 2021-01-02 19:17

    Just use a global temp table like ##temp_table. This table will be accessible by all sessions and will remain in database until all sessions that referred it have been closed.

    Local and global temporary tables in SQL Server

    0 讨论(0)
  • 2021-01-02 19:18

    You can't query from a temp table using database mail. The session that you used to create the temp table (step 1 of your job I assume) has been closed and a new session started when step 2 started. Because the session has been closed the table has been dropped (even if the table hasn't been dropped because it's a new session you don't have access to the other sessions temp table).

    Either create a physical table and use that (either in the tempdb database or your database) or put the code which creates the output in the @query with the select * from #TempForLogSpace at the end (a stored procedure will be much easier to deal with in this case).

    0 讨论(0)
  • 2021-01-02 19:33

    I know this thread is a bit old, but in case someone stumbles on this, the problem is like mrdenny said that sp_send_dbmail stored procedure runs in it's own session, however you can get around this by using a global temporary table instead (prefix the table with two pound signs (##)).

    0 讨论(0)
提交回复
热议问题