SSIS 正在加载 Excel 文件
SSIS loading Excel file
这是我第一次使用 SSIS,出现此错误。
使用:
对比 2015,Excel 2010
Exception from HRESULT: 0xC02020E8
Error at Data Flow Task [Excel Source [1]]: SSIS Error Code DTS_E_OLEDBERROR.
An OLE DB error has occurred. Error code: 0x80004005.
Error at Data Flow Task [Excel Source [1]]: Opening a rowset for "'R0270 Cases$'" failed. Check that the object exists in the database.
excel 文件的前 7 行是 headers 信息。第 8 行有列标签,数据从 9 开始。
Excel 源代码编辑器:
数据访问模式:Table或查看
Excel Sheet drop-down,它在前 30 秒内出错,然后用 sheet 名称填充。
知道发生了什么以及如何跳过前 7 行。我有 100 多个 excel 个文件,同样的事情发生在 8 个不同的文件上。
感谢您的帮助。
错误可能的解决方案
- 您必须将
IMEX=1;
添加到 excel 连接字符串,以帮助 excel 正确识别数据类型
- 将
OLE DB Source
适配器的 DelayValidation
属性 设置为 True
。
- 尝试从 sheet 和 excel 文件名中删除空格
从第 8 行读取
假设你有 4 列
- 在数据流任务中,双击 excel 源 将源设置为 SQL 命令
- 使用以下命令:
SELECT * FROM [R0270 Cases$A8:D]
,所以它会从第8行开始读取(D
表示excel中的第4列)
参考资料
这是我第一次使用 SSIS,出现此错误。
使用: 对比 2015,Excel 2010
Exception from HRESULT: 0xC02020E8 Error at Data Flow Task [Excel Source [1]]: SSIS Error Code DTS_E_OLEDBERROR.
An OLE DB error has occurred. Error code: 0x80004005.Error at Data Flow Task [Excel Source [1]]: Opening a rowset for "'R0270 Cases$'" failed. Check that the object exists in the database.
excel 文件的前 7 行是 headers 信息。第 8 行有列标签,数据从 9 开始。
Excel 源代码编辑器:
数据访问模式:Table或查看
Excel Sheet drop-down,它在前 30 秒内出错,然后用 sheet 名称填充。
知道发生了什么以及如何跳过前 7 行。我有 100 多个 excel 个文件,同样的事情发生在 8 个不同的文件上。
感谢您的帮助。
错误可能的解决方案
- 您必须将
IMEX=1;
添加到 excel 连接字符串,以帮助 excel 正确识别数据类型 - 将
OLE DB Source
适配器的DelayValidation
属性 设置为True
。 - 尝试从 sheet 和 excel 文件名中删除空格
从第 8 行读取
假设你有 4 列
- 在数据流任务中,双击 excel 源 将源设置为 SQL 命令
- 使用以下命令:
SELECT * FROM [R0270 Cases$A8:D]
,所以它会从第8行开始读取(D
表示excel中的第4列)
参考资料