我試圖發送數據庫郵件時發生錯誤transaction.My設置爲dbo.sp_send_dbmail是正確的,當我執行proc我在1分鐘內收到一封電子郵件。發送dbmail @@錯誤從sql server 2005
但是,當我嘗試在事務內的另一個proc中使用dbo.sp_send_dbmail時,我得不到電子郵件。 Sql服務器在結果窗口中顯示「郵件排隊」,但我從不接收它。
BEGIN TRANSACTION
DECLARE @err的int DECLARE @test爲nvarchar(最大)
RAISERROR( '這是一個測試',16,1) SELECT @err = @@ ERROR
IF @err <> 0 BEGIN
SET @test = ERROR_MESSAGE()
EXEC msdb.dbo.sp_send_dbmail
@收件人= '[email protected]',
@body = '內部測試',
@subject = '用PROC錯誤',
@body_format =「HTML ',
@append_query_error = 1,
@profile_name ='數據庫郵件配置文件';ROLLBACK TRANSACTION RETURN END
COMMIT TRANSACTION
,我得到結果爲
消息50000,級別16,狀態1,行7
這是一個測試
郵件排隊。
humm這就是我最初想的......但是我認爲它會像打印聲明......你知道......拍攝並忘記某種東西,因爲它正在執行proc ....我甚至嘗試將郵件代碼放在開始結尾之外,但它仍然不起作用.... – Zeus 2010-06-10 19:58:19