错误:未在本地计算机上注册 Microsoft.ACE.OLEDB.12.0 提供程序
今天有朋友咨询学习教程里面数据库一章时,当程序运行到 conn.Open 这个位置时产生错误:
未在本地计算机上注册 Microsoft.ACE.OLEDB.12.0 提供程序。
使用的的连接语句:
conn.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;data source=D:\lessons\Northwind1.mdb;"
刚看到这个错误,我也比较奇怪,因为教程代码都是在我计算机上都是测试通过的。
首先问到的情况是,朋友计算机使用的是office access2016的版本,我的计算机上使用的是2010的版本,初步推测是因为版本问题,网上初步搜索的结果是office 2013对应为 Microsoft.ACE.OLEDB.14.0 ,office 2016对应为 Microsoft.ACE.OLEDB.16.0 。于是显示请他按照这个修改了ConnectionString语句。
但是还是错误。
这次,我仔细搜索了一下,发现不管office 2013还是office 2016,都应该使用Microsoft.ACE.OLEDB.12.0。
于是我就远程看了一下朋友的计算机。发现系统用的64位,office也是64位,将vb.net编辑器下的cpu修改为X64,就运行正确了。
其实在教程《Visual Basic.Net 循序渐进》第19章 数据库操作 第19.3.1节《连接字符串》一节有写开发32位程序和64位程序时候的连接语句不一样,但是忘了写还要与数据库引擎32位还是64位配套,如果64位的数据库引擎(office 64位)那么别忘了开发的程序也需要设置为使用64位CPU。
特此记下防止忘记。
本文地址:https://blog.csdn.net/UruseiBest/article/details/108987861
上一篇: 爆冷,笑点不一般哟!
下一篇: iPhone12屏幕变黄或偏黄怎么办
推荐阅读
-
IIS7.5 提示未在本地计算机上注册“Microsoft.Jet.OleDb.4.0”提供程序
-
“未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序”的解决方案
-
"未在本地计算机注册“OraOLEDB.Oracle.1”提供程序"问题的两种解决方法
-
SQL server 导入数据 的时候报错:未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序
-
C#读取excel文件提示未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序
-
未在本地计算机上注册“Microsoft.Jet.OleDb.4.0”提供程序错误的解决方法
-
未在本地计算机上注册“microsoft.ACE.oledb.12.0”提供程序报错的解决办法
-
SQL SERVER导入EXCEL文件:未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序
-
IIS7.5 提示未在本地计算机上注册“Microsoft.Jet.OleDb.4.0”提供程序
-
未在本地计算机上注册“microsoft.ACE.oledb.12.0”提供程序解决办法