2017-06-14 57 views
1

所有sp_send_dbmail設置2個查詢的@query參數

請問是否有可能設置爲存儲過程sp_send_dbmail兩個查詢?

例如:

EXEC msdb.dbo.sp_send_dbmail 
@profile_name = 'example', 
@recipients = '[email protected]', 
@query = 'Select * from table1; Select * from table2;', 
@subject = 'Example', 
@attach_query_result_as_file = 1 ; 

由於大多數example從互聯網的只包含@查詢參數的一個查詢。

請問上述代碼會導致錯誤嗎?

非常感謝!


編輯:

部署後,該腳本是導致錯誤定義的參數@query。

該錯誤消息如下所示

錯誤格式的查詢,可能是無效的參數[SQLSTATE 42000](錯誤22050)。該步驟失敗。

解決方案:

注意,限定@query時,該表應該在完整的路徑,

因此:

@query =「從[您的服務器名]選擇*。 [DBO] .table1;從[YOUR_SERVER_NAME]選擇*。[dbo] .table2;',

+0

當您運行它時是否會導致錯誤? – artm

+0

因爲我使用我公司的開發服務器,它已禁用dbmail服務,所以我不能測試是否存在錯誤:'( – ProgrammingBaKa

+0

它應該工作。來源:https://stackoverflow.com/questions/16458610/sql- server-db-mail-which-can-send-mail-for-two-more-queries –

回答

2

我試過了。 它確實有效,但結果是在同一個文件中。不知道如果那是你想要的。 加上行數也是一個問題。或者顯示如下錯誤:

Msg 22050, Level 16, State 1, Line 0 
File attachment or query results size exceeds allowable value of 1000000 bytes. 
+0

感謝您的回答,我希望結果在一個文件中:)。 – ProgrammingBaKa