2015-02-13 2 views
0

Я бегу на вопрос при создании и реализации нового задания агента SQL Server для запуска и электронной почте результаты простого запроса:сообщения электронной почты агента SQL Server: Ошибка форматирования запроса

EXEC ms.dbo.sp_send_dbmail 
@profile_name = 'Main DB Mail Profile', 
@recipients = '[email protected]', 
@subject = 'Basket Report', 
@query = N'Select Store, Date, Sum(Amount) as DailyTotal, COUNT(CAST(Trans as varchar(30))+CAST(Register as Varchar(30))) as DistinctTransactions 
From BasketAnalysis 
Where Date = dateadd(day,datediff(day,1,GETDATE()),0) 
GROUP BY Store, Date 
ORDER BY Store ASC;', 
@attach_query_result_as_file = 1, 
@query_attachment_filename = 'BasketReport.txt' 

Я продолжал работать в загадочное сообщение об ошибке в журнале истории для задачи.

Выполнено как пользователь: NT AUTHORITY \ NETWORK SERVICE. Форматирование ошибки запрос, возможно недопустимые параметры [SQLSTATE 42000] (ошибка 22050). Не удалось выполнить этап .

Неужели кому-то повезло узнать больше об этих ошибках и о том, как их разрешить?

ответ

0

Копаясь, я нашел большое количество различных потенциальных решений, которые, как я думал, я попытаюсь скомпилировать некоторые из них здесь.

  1. Права пользователя: Пользователь SQL Server Agent должен обладать достаточными полномочиями для выполнения и отправки по электронной почте. Пользователь должен иметь роль сервера DatabaseMailUserRole (под именем msdb user mapping). Диспетчер конфигурации SQL дает вам возможность просматривать и настраивать пользователя агента сервера, если это необходимо, эксперимент с эксклюзивным пользователем сервера Agent может быть полезным!
  2. Запустите запрос в новом окне запроса: Тупой, как это, я полностью забыл сначала выполнить запрос за пределами самого задания. Я понял это, и это дало мне больше информации об ошибках, чем то, что было зарегистрировано в истории сервера.
  3. Проверьте свои параметры электронной почты: Это моя проблема, но я следил за this tutorial, но получал эту ошибку, потому что я забыл включить параметр «@execute_query_database» в свой запрос. Добавление этого, указывая на мою соответствующую базу данных, было отсутствующим.
Смежные вопросы