【问题标题】:unexpected termination error in ssisssis 中的意外终止错误
【发布时间】:2017-12-27 18:22:59
【问题描述】:

从服务器运行 ssis 包时,出现以下错误。

数据流任务:错误:Excel 源未通过预执行阶段并返回错误代码 0xC0202009 数据流任务:错误:SSIS 错误代码 DTS_E_OLEDBERROR。发生 OLE DB 错误。错误代码:0x80004005 一条 OLE DB 记录可用。Source ."(null)" Hresult 0x80004005 描述:"(null)"。

为了解决这个问题,我加载了少量相同的数据,没有问题。但是,如果我有 25000 行的 excel 文件,ssis 包会失败。因为我正在处理更大的数据,我需要一个更好的解决方案。

【问题讨论】:

  • 预执行阶段会出现什么问题?
  • Excel 文件很挑剔,尝试保存与Comma Separated file(csv) 相同的电子表格,并使用Flat file source 加载它
  • 平面文件的问题是,如果我的列数据中间有“”,它将中止该过程。

标签: sql-server excel ssis etl


【解决方案1】:

我遇到了类似的问题,使用此解决方法已解决:

首先尝试使用 SQL Server 导入和导出向导将 excel 文件导入 sql。如果成功完成。只需选择将包保存到文件系统(在向导中选择此选项)。打开它并编辑包以添加其他转换选项。

【讨论】:

  • @MJ8 还有另一种解决方法是在脚本任务中将 excel 文件导入数据表。然后将其存储在对象类型的 ssis 变量中。然后将此变量用作源(在数据流任务中使用脚本组件)。您可以点击此链接了解更多关于将 excel 导入数据表stackoverflow.com/questions/18511576/…
猜你喜欢
  • 2013-04-16
  • 2016-10-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多