0
我有一個查詢,它告訴我如果在接下來的24小時內有什麼事情發生,但是使用SQL Server代理,它會發送一封電子郵件,查詢是否返回結果,所以:SQL Server代理 - 發送沒有內容的電子郵件
我的問題
基於SQL代碼下面我將直接添加到SQL Server代理的工作,我可以將它設置爲不將查詢發送的電子郵件返回0行計數?
我已經做了一些研究,但是應用布爾does not工作,以檢測是否有結果還是不行,否則我可能做錯了:
代碼
DECLARE @xml NVARCHAR(MAX)
DECLARE @body NVARCHAR(MAX)
SET @xml = CAST((
SELECT
Jobs.JobID AS 'td', '' ,
Jobs.JobName AS 'td', '',
ToDoList.List AS 'td', '',
Staff.StaffName AS 'td', '',
CONVERT(DATE, ToDoItem.DueDate) AS 'td', '',
ToDoItem.Comment AS 'td', ''
FROM ToDoItem
INNER JOIN Staff ON ToDoList.StaffID= Staff.StaffID
INNER JOIN ToDoList on ToDoItem.ToDoListID = ToDoList.ToDoListID
INNER JOIN JobSummaryAndStatus ON ToDoList.JSASID = JobSummaryAndStatus.JSASID
INNER JOIN Jobs ON ProjectSummaryAndStatus.JobID= Jobs.JobID
WHERE DueDate BETWEEN GETDATE() AND GETDATE() + 1
AND Staff.StaffID = 20
FOR XML PATH('tr'), ELEMENTS) AS NVARCHAR(MAX))
SET @body ='<html><body><H3>Jobs Due Today</H3>
<table border = 1>
<tr>
<th> Job Ref </th> <th> JobName </th> <th> List Name </th> <th> Staff Name </th> <th> Due Date </th> <th> Comments </th></tr>'
SET @body = @body + @xml +'</table></body></html>'
EXEC msdb.dbo.sp_send_dbmail
@body = @body,
@body_format ='HTML',
@recipients = '[email protected];',
@subject = 'Jobs Due Today';
研究
我試過這個很小的成功,所以希望它的我的SQL知識,這就是爲什麼我不能應用這個簡單的布爾檢查器的原因。我敢肯定它會在底部檢查@body標籤發送前的電子郵件,我可以和各種各樣的IF語句這裏
http://www.sqlservercentral.com/Forums/Topic1131198-391-1.aspx的幫助
生病現在試試這個 – Crezzer7
即時檢查錯誤的一個,至少這是一個簡單的錯誤,我明白,乾杯 – Crezzer7