SSIS连接Excel 2021数据源失败,如何解决?
解决SSIS连接Excel 2021数据源的问题
安装匹配的Access Database Engine 16.0
SSIS的Excel数据源依赖Microsoft Access Database Engine(ACE)驱动,Excel 2021对应ACE 16.0版本。注意必须和你的SSIS开发环境(Visual Studio)位数一致:- 如果VS是32位(多数默认情况),安装32位ACE引擎;系统是64位但VS用32位的话,不要装64位引擎
- 安装时关闭所有Office程序,避免冲突;如果仍报错,用静默安装命令:
setup.exe /quiet
调整SSIS项目的运行位数
打开项目属性 → 调试选项卡,将Run64BitRuntime设置为与ACE引擎对应的位数:- 装32位引擎就设为False,装64位则设为True
默认VS调试SSIS是32位模式,位数不匹配会导致无法读取工作表
- 装32位引擎就设为False,装64位则设为True
手动修改连接字符串
图形化界面的版本选项没有2021,直接在连接管理器的「属性」面板修改ConnectionString,使用ACE 16.0的标准字符串:Provider=Microsoft.ACE.OLEDB.16.0;Data Source=你的Excel文件路径.xlsx;Extended Properties="Excel 12.0 Xml;HDR=YES";其中
HDR=YES表示Excel第一行是表头,若第一行是数据则改为HDR=NO检查Excel文件状态
- 确保文件是
.xlsx/.xlsm格式,旧.xls格式需修改连接字符串的扩展属性为Excel 8.0 - 读取时必须关闭Excel文件,避免文件被锁定
- 工作表名称不要包含特殊字符或空格,若有特殊名称,可在连接时用
[工作表名$]格式指定
- 确保文件是
内容的提问来源于stack exchange,提问作者user22998494
相关产品推荐
相关产品推荐

