我创建了一个SSIS包,用于将excel文件加载到数据库中,但是在执行数据流任务之前,我使用脚本任务通过interop.excel dll来更改excel列之一的数据类型。
在服务器本身上在VS2015中运行该程序包时,它会成功完成,但是当我通过sql server代理运行它时,它会失败并给出以下错误消息
“脚本任务错误:目标计算机的目标已抛出异常 调用。”
我已经在GAC中注册了该dll。
我应该尝试采取哪些其他步骤来解决该问题?
编辑:-
错误消息:
使用CLSID检索组件的COM类工厂 {000209FF-0000-0000-C000-000000000046}由于以下原因而失败 错误:80070005访问被拒绝。 (来自HRESULT的异常:0x80070005 (E_ACCESSDENIED)。
答案 0 :(得分:1)
嗯。如果您成功在您的帐户下运行该程序包,而该程序无法由SQL Job运行,则最可能的情况是SQL Server代理服务帐户无法访问Excel文件。
我将创建一个作业代理,如此处How to add SQL Job Proxy所述,该帐户具有有权访问Excel文件的帐户。