当前位置: 首页 > article >正文

MSSQL2022的一个错误:未在本地计算机上注册“Microsoft.ACE.OLEDB.16.0”提供程序

MSSQL2022导入Excel的一个错误:未在本地计算机上注册“Microsoft.ACE.OLEDB.16.0”提供程序
    • 一、导入情况
    • 二、问题发现
    • 三、问题解决

最近在安装新版SQLServer SSMS 2022后,每次导入Excel都会出现错误提示:未在本地计算机上注册“Microsoft.ACE.OLEDB.16.0”提供程序。

最终发现可能是SSMS的一个bug,SSMS默认是32位版本,无法调用64位版本。

一、导入情况

采用SSMS的右键 导入数据功能,出现如下错误。
导入功能

在导入Excel 的 xlsx 文件,无论是选用 2007-2010,还是2013、2016的版本,都无法导入,出现错误:未在本地计算机上注册“Microsoft.ACE.OLEDB.16.0”提供程序。(版本号与对应的Excel版本有关,如12.0、15.0、16.0)
Excel版本选择

错误提示

二、问题发现

问题比较可靠的回答可参考这篇文章:导入EXCEL数据时,提示“未在本地计算机上注册“Microsoft.ACE.OLEDB.16.0”提供程序

根据搜索,网上大多数指引,是认为缺少相应的引擎驱动,指导下载 AccessDatabaseEngine_x64.exe,但很可惜无效。

经过仔细对比,并参考网上的文献,最终发现问题在于SSMS本身是32位软件,微软只是让它兼容了64位的SQLserver数据库,但其内置的数据导入导出程序依旧是32位!可以在运行导入导出向导时检查任务管理器。

32位导入导出向导

三、问题解决

找到了原因,解决问题就比较简单了,有二个办法:
(1)使用sqlserver 自带导入导出数据(64位)即可
在这里插入图片描述

(2)卸载accessdatabaseengine_X64.exe,重新安装2007版本的(不过微软似乎已经不提供下载了,需要自己网上搜索)。

按以上思路,按理应该有更好的办法,完全使用64位的SSMS和设置导入导出使用64位程序,可惜本人测试目前还没找到有类似的对应方案。


http://www.kler.cn/a/565300.html

相关文章:

  • 代码随想录算法【Day57】
  • 笔记:大模型Tokens是啥?为啥大模型按Tokens收费?
  • Ubuntu2204下使用NVIDIA GeForce RTX 4090进行DeepSeek-R1-Distill-Llama-8B模型微调
  • Spark map与mapPartitions算子源码级深度解析
  • 在本机电脑搭建AI大模型环境的要求和模型选择
  • 一个原教旨的多路径 TCP
  • 基于Rook的Ceph云原生存储部署与实践指南(上)
  • 文字描边实现内黄外绿效果
  • 算法日记29:leetcode322零钱兑换(DFS->记忆化搜索->DP)
  • Flask 应用结构与模块化管理详细笔记
  • React 项目创建与文件基础结构关系
  • MATLAB环境下从信号中去除60Hz工频干扰噪声
  • MySQL零基础教程09—正则表达式搜索(上)
  • C++ 设计模式 十:享元模式 (读书 现代c++设计模式)
  • [特殊字符] 蓝桥杯 Java B 组 之最小生成树(Prim、Kruskal) 并查集应用
  • AI人工智能机器学习之降维和数据压缩
  • Ubuntu 下 nginx-1.24.0 源码分析 - ngx_rbtree_init
  • BERT模型深入理解——自然语言处理的里程碑
  • unity学习61:UI布局layout
  • Postman 11.34 最新版安装与API测试入门教程(Windows平台)