Generic failure using sp_send_dbmail in SQL Server 2014

后端 未结 3 2085
时光说笑
时光说笑 2021-01-13 23:51

I\'m trying to use sp_send_dbmail to send the results of a query through a SQLAgent job in SQL Server 2014. I believe I have my DBMail profile set up properly

相关标签:
3条回答
  • 2021-01-14 00:30

    I found that despite both my query window (for testing) and SqlAgent job were pointing at my desired DB, sp_send_dbmail doesn't seem to have any database context. My original post was failing because SQL didn't know where to run SELECT * FROM TestTable. The fix is to provide sp_send_dbmail with database context by either fully qualifying your table in the @query parameter:

    @query = 'SELECT id FROM testDB.dbo.TestTable'
    

    or by providing the optional @execute_query_database parameter:

    @execute_query_database = 'testDB'
    
    0 讨论(0)
  • 2021-01-14 00:49

    Enable sysadmin server role for the account that is used to run the SQL Server Agent.Below are the screenshots.

    Error

    Fix

    Now the SQL Server Job runs without any errors and I get an email from dbmail.

    0 讨论(0)
  • 2021-01-14 00:49

    There's another reason why you might get this error; if the query has an issue.

    In our case we had (note that it's not due to a syntax error; note the missing quotes):

    DECLARE @EmailQuery varchar(max) = 'select 
                                        e.Field1,
                                        REPLACE(REPLACE(e.ExceptionReason, CHAR(13), ''), CHAR(10), '') ExceptionReason,
                                        e.UserName
                                    from dbo.tblException e'
    

    Once we corrected it as follows, it worked fine:

    DECLARE @EmailQuery varchar(max) = 'select 
                                        e.Field1,
                                        REPLACE(REPLACE(e.ExceptionReason, CHAR(13), ''''), CHAR(10), '''') ExceptionReason,
                                        e.UserName
                                    from dbo.tblException e'
    
    0 讨论(0)
提交回复
热议问题