1.Microsoft.ACE.OLEDB.12.0 简介
是一个数据访问接口,用于在office文件和非office应用程序间传输数据。例如 Microsoft Office Access 2010(*.mdb和 *.accdb)文件和Microsoft Office Excel 2010(*.xls、*.xlsx和 *.xlsb)文件)与其他数据源(例如 Microsoft SQL Server)之间传输数据。
2.Microsoft.ACE.OLEDB.12.0 在 MS SQL Server 2008中的应用
查看是否已经安装此接口:进入SSMS后,在对象资源管理器中,位次展开“服务器对象”--- “链接服务器”---“访问接口”,如果在访问接口下面找到了Microsoft.ACE.OLEDB.12.0(如下图),则说明已经安装此接口。也有可能版本号不是12.0,此版本是对应Office 2010的。一般情况下,如果安装了Office,此接口会跟着一起被安装。
部署生产环境
系统:Windows server 2008 R2 X64位系统
数据库:SQL Server 2008
错误提示信息:
数据库导入xlsx文件提示 "Microsoft.ACE.OLEDB.12.0' provider is not registered on the local machine" 错误,说明我们服务器没有 "Microsoft.Ace.OleDb.12.0" 接口 ,导致我用 OpenDataSource('Microsoft.Ace.OLEDB.12.0' 导入Excel数据报错。
解决方法:
1.先卸载了32位office 2010或者安装64位office 2010,再到http://www.microsoft.com/zh-CN/download/details.aspx?id=13255下载“Microsoft Access 2010 数据库引擎可再发行程序包”装上。
2.安装时根据系统位数对应安装,如果系统是64位、数据库是SQL Server 2008 64位,安装时选择“AccessDatabaseEngine_X64.exe”。
3.如果安装完毕后检查是否有此接口:
本文由 podipod软库网 作者:DevOps 发表,转载请注明来源!