从Excel中导入数据时,提示“未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序”的解决办法
操作系统:使用的是64位的Windows Server 2008
解决办法:
这是由于该计算机上没有安装Microsoft Access Database Engine组件,该组件帮助在现有的Microsoft Office文件与其他数据源之间传输数据。
在向软件中导入数据时,如果数据源选用Excel时,连接字符串中使用的是“Microsoft.ACE.OLEDB.12.0”,所以必须安装该组件。
对于使用64位操作系统的用户,请下载相应的64位程序。
具体下载地址:http://www.microsoft.com/downloads/details.aspx?FamilyID=c06b8369-60dd-4b64-a44b-84b371ede16d&displayLang=zh-cn
对于一些早期用户,如果连接字符串中使用的是“Microsoft.Jet.OLEDB.4.0”,由于Jet项目已经停止,该项目不再提供64位程序,所以无法继续使用此种连接方式,请改用“Microsoft.ACE.OLEDB.12.0”,并在服务器上安装相应的64位程序。
如果进行如上操作还是不能解决的话,请参照如下方法:
调用C:\Program Files (x86)\Microsoft SQL Server\100\DTS\Binn\DTExec.exe 一定要是(X86)这个文件夹下的哦,这个命令行工具的具体用法可以查看MSDN
总结如下:
1. 在用SQL SERVER访问.xlsx文件(office2007&2010文件格式)时,必须用provider 'Microsoft.ACE.OLEDB.12.0' 来实现。
2. 首先要安装AccessDatabaseEngine.exe。 下载路径:http://www.microsoft.com/downloads/details.aspx?familyid=7554F536-8C28-4598-9B72-EF94E038C891&displaylang=en
3. 在32位系统中可以在数据库中看见这个provider。
4. 在64位系统中不能看见它,这时需调用 C:\Program Files (x86)\Microsoft SQL Server\100\DTS\Binn\DTExec.exe来执行package。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)