gpt4 book ai didi

excel - SSIS - "External table is not in the expected format"和 .xls 文件

转载 作者:行者123 更新时间:2023-12-01 23:08:05 27 4
gpt4 key购买 nike

在 SSIS ETL 转换中,我尝试加载某个 .xls 文件。我有几个具有相似架构的相同文件,并且所有文件都正常工作。然而,这个文件会引发“外部表不是预期的格式”错误。这是我尝试过的:

  • 我已经将连接字符串从 Jet OLEDB 更改为 ACE OLEDB,但没有结果。
  • 我将连接类型从 Excel 97-2003 更改为 2007,但没有结果。
  • 连接管理器正在使用变量,因此我尝试制作另一个直接加载文件的连接管理器。没有结果。
  • 我正在使用 SQL 查询从文件中读取数据,因此我尝试读取文件中的工作表。它们不加载。
  • 我尝试了“另存为...”并使用了 Excel 97-2003。
  • 我尝试重新保存文件。
  • 我尝试恢复原始文件。
  • 我检查了该文件的工作表,并将它们与已加载的类似工作表进行了比较。至少两者都有相同的床单。

更奇怪的是,如果我在 SSIS 中加载该文件时在 Excel 中保持打开状态,则该文件会正确加载。作为附加信息:

  • 该文件包含宏,其余文件也包含宏。
  • 我的计算机运行 32 位架构。
  • 我使用的是 Visual Studio 2010 + SQL Server 2012。

还有什么可能会触发此错误?

编辑:现在我尝试设置 ADO.NET 源和 OLEDB 源来打开 .xls 文件。 ADO.NET 无法“从列中检索信息”,并且 OLEDB 会关闭其连接。也许有办法知道Excel文件读取何时失败?

我还尝试了一些非常棘手的事情:我检查了事件监控器并注意到有一些错误,所以我快速进行了谷歌搜索并修复了它。它已链接到 SSIS,但修复它并没有解决错误。

最佳答案

最后我做了一件简单得多的事情:我将文件转换为 .xlsx 并将我的连接管理器设为 Excel 2007。虽然如果另一个答案比我的更好,我会标记它,但我会将其留给其他有类似问题的人。

关于excel - SSIS - "External table is not in the expected format"和 .xls 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25027904/

27 4 0