【问题标题】:Error encountered when executing SSIS package执行 SSIS 包时遇到错误
【发布时间】:2016-11-27 18:41:33
【问题描述】:

执行 SSIS 包时遇到以下错误:

Retrieving the COM class factory for component with CLSID {4555B0A5-E8D7-49BD-B299-3140C34D3769} failed due to the following error: e06d7363 
Exception from HRESULT: 0xE06D7363.;
at Microsoft.SqlServer.Dts.Runtime.Package..ctor()
at Microsoft.SqlServer.Dts.Runtime.PackageItem.Load(IDTSEvents events)
at Microsoft.SqlServer.Dts.Runtime.PackageItem.LoadPackage(IDTSEvents events)
at Microsoft.SqlServer.IntegrationServices.Server.ISServerExec.ISServerExecutionEvents.LoadPackage(PackageItem item)
at Microsoft.SqlServer.IntegrationServices.Server.ISServerExec.ProjectOperator.StartPackage()
at Microsoft.SqlServer.IntegrationServices.Server.ISServerExec.ProjectOperator.PerformOperation()

这就是我所做的:

  • 在 Visual Studio 中构建包
  • 将包导入 SQL Server Management Studio 中的集成服务目录
  • 已将包部署到集成服务目录
  • 执行了包(并得到了错误)。

我上网查了下,发现0xE06D7363表示抛出了C++异常,其实没什么用。

我还发现 4555B0A5-E8D7-49BD-B299-3140C34D3769 指的是注册表中名为 SSIS.Package.3 的对象,但这也无济于事。

有没有人遇到过这种情况,更重要的是,有没有人知道解决方法?

【问题讨论】:

  • 我在使用 Visual Studio(参考 sql 2008)构建包并在不同版本的 sql server 上运行它时遇到了同样的错误...... CLSID 可能因版本而异跨度>
  • 谢谢,@H.Fadlallah。这听起来像是我的问题 - 我在 VS 2015 中打开 SSIS 项目,并部署到 SQL Server 2014。你是如何解决这个问题的?
  • 这是一个老问题.. 但我记得在你的解决方案中将对象的类名更改为正确的。即Package.3 可能是Package 或其他东西
  • 我想起了这个问题!!!这都是关于 ManagedDTS.dll 签出解决方案中使用的版本

标签: sql-server ssis sql-server-2014 etl


【解决方案1】:

如果从 .net 应用程序创建 ssis 包

问题在于该应用程序已使用对 SQL 版本 ManagedDTS.dll 的引用进行编译,并且正在部署到 SQL 2014 环境中。检查引用并确认您对 ManagedDTS.DLL 的引用使用的是与您的生产环境匹配的 DLL 版本。

如果您使用 Visual Studio 创建集成服务包:

在集成服务项目的property 页面中,在Configuration PropertiesGeneral tab 上,选择TargetServerVersion 属性并选择SQL Server 2016SQL Server 2014SQL Server 2012

阅读此MSDN article 了解更多信息

Article 包含更多详细信息

【讨论】:

  • 您是如何更改班级名称@H.Fadlallah 的?您需要单击 Visual Studio 中的哪些菜单或菜单项才能转到要在其中进行更改的对话框?还是您在另一个应用程序中进行了更改?
  • 不幸的是,我在 Visual Studio 中打开的项目是一个 SSIS 项目,解决方案资源管理器中没有列出任何类型的引用。还有其他想法吗?
  • 我认为您已经在应用程序中构建了您的包。编辑了我的答案
  • H.Fadlallah - 如果你想引起别人的注意,而不是你正在评论的帖子的作者(在这种情况下就是你),你需要使用@标记,像这样:@TolaOdejayi
猜你喜欢
  • 1970-01-01
  • 2011-06-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-06-11
  • 1970-01-01
  • 2020-11-02
  • 2020-08-08
相关资源
最近更新 更多