【问题标题】:SSIS can't read end of column in excel file (Excel Connection Manager)SSIS 无法读取 excel 文件中的列结尾(Excel 连接管理器)
【发布时间】:2019-07-27 15:21:43
【问题描述】:

当 SSIS 无法读取 excel 文件中的列结尾时,我遇到了问题,如下所示(Presort id):

我试图通过编辑 OpenRowSet for Excel Source(数据流)来弄清楚,但它仍然无法正常工作。

我的临时解决方法是单击每个 excel 文件上的“启用编辑”按钮,然后成功读取 [Presort Id] 列。

我对这个问题的目标是 [Presort ID] 列应该由 SSIS 读取,而不是每个处于保护模式的 excel 文件。

请提供解决此问题的任何想法。 谢谢...

【问题讨论】:

  • 如果您点击“启用编辑”并保存文档并重试怎么办?
  • 它可以工作....但是如果您应该打开 100 多个这样的文件,那将是浪费时间... :(
  • 所以尝试禁用tahe安全功能,文件将默认启用编辑。看看这个:answers.microsoft.com/en-us/msoffice/forum/all/…
  • @Flicker 我认为这应该是一个答案。

标签: sql sql-server excel ssis etl


【解决方案1】:

我认为这是 Microsoft Office 安全选项,您必须从 Office 信任中心取消选中所有 保护模式选项

以下链接包含执行此操作的分步指南:

【讨论】:

  • 我已经尝试过这种方式,但 SSIS 仍然面临有关 VS_NEEDSNEWMETADATA 的错误。相反,我在信任中心禁用了“启用编辑”,我应该打开每个 excel 文件然后保存它。之后,SSIS 可以读取该列并正常工作。 :(
  • @AfifPratama 如果您面对的是VS_NEEDSNEWMETADATA,那么只需删除 Excel 连接管理器并重新创建它,或者只是禁用 Excel 源 ValidateExternalMetadata 属性
猜你喜欢
  • 2014-07-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-05-07
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多