bunty swapnil Ответов: 0

Ошибка для сервиса, теперь при запуске, используя источник открытого запроса


Привет,

я разработал пакет, который интегрирует данные из источника service now в базу данных SQL.
Шаги ниже, которые я использовал для интеграции.
1. Скачал сервис теперь драйвер ODBC для 1.0.9 и установлена.
2.создал DSN для Service now source и использовал DatasourceName в качестве Link_Server.
3.создан связанный сервер с использованием имени источника данных.
4.Напишите инструкцию Open Query select для извлечения записей из источника.

но я получаю прерывистую ошибку при запуске пакета, иногда он работает успешно, а иногда терпит неудачу, но при повторной попытке он проходит.
В чем может быть проблема?
Ниже приведено сообщение об ошибке для справки.

[OLE DB Source [45]] Error: SSIS Error Code DTS_E_OLEDBERROR.  An OLE DB error has occurred. Error code: 0x80040E14.
An OLE DB record is available.  Source: "Microsoft SQL Server Native Client 11.0"  Hresult: 0x80040E14  
Description: "Cannot execute the query "SELECT 
		ASMT_ASSESSMENT_INSTANCE.taken_on  AS [SENT_DATE]
,
ASMT_ASSESSMENT_INSTANCE.dv_state AS [STATE]
,
ASMT_ASSESSMENT_INSTANCE.sys_created_by AS [SURVEY_CREATED]
,
INC.number AS [TICKET_NUMBER]
,
ASMT_ASSESSMENT_INSTANCE.[trigger_table] AS TICKET_TYPE
	,
ASMT_ASSESSMENT_INSTANCE.[user] AS SURVEY_USER
	,
ASMT_ASSESSMENT_INSTANCE.dv_metric_type AS SURVEY_TYPE
	,
cast(INC.dv_location as varchar(4000)) AS LOCATION
	,
cast(INC.dv_location as varchar(4000)) AS N_Owner_MSC
,'Test Company' AS COMPANY
	,
'SERVICE DESK' AS SURVEYCLASSIFICATION
	,ASMT_ASSESSMENT_INSTANCE.due_date as [SCRUBDATE]
,
ASMT_ASSESSMENT_INSTANCE.sys_created_on as [SURVEYSTARTED]
,
ASMT_ASSESSMENT_INSTANCE.sys_created_on as [SURVEYINVITATIONDATE]
,
ASMT_ASSESSMENT_INSTANCE.NUMBER AS INSTANCEID


 
FROM asmt_assessment_instance ASMT_ASSESSMENT_INSTANCE 

JOIN incident INC ON INC.sys_id=ASMT_ASSESSMENT_INSTANCE.trigger_id
WHERE INC.number IS NOT NULL
 
AND ASMT_ASSESSMENT_INSTANCE.sys_updated_on>='2018-10-22 14:47:31'" against OLE DB provider "MSDASQL" for linked server "Link_Server". ".


Что я уже пробовал:

Попытался изменить все свойства в консоли управления, такие как размер кучи Java, уменьшенный размер пакета, увеличенный тайм-аут и повторная попытка.

RedDk

Это не так плохо, как кажется (ошибка: код ошибки SSIS DTS_E_OLEDBERROR. Произошла ошибка OLE DB. Код ошибки: 0x80040E14.
Доступна запись OLE DB. Источник: "Microsoft SQL Server Native Client 11.0" Hresult: 0x80040E14-это улов верхнего уровня "не удается выполнить запрос" (который следует ниже).

Таким образом, вы должны увидеть, существуют ли все эти объекты в целевой базе данных. Попробуйте использовать "SELECT * FROM sys.database" или любое другое количество подобных sys.[расширения] SDF или еще лучше поиск ключевых слов в BOL.

Поскольку вам удалось сделать вещь ODBC вне всего этого TSQL, где вы получаете сбой, я бы предположил, что добраться до хранилища данных можно каким-то другим способом, поэтому попробуйте и там. Что-то вроде MS Access позволит вам выполнять тесты на запущенных экземплярах SQL Server usg различных драйверов, включая ODBC.

0 Ответов