vs2015 64位系统下使用mdb数据库问题
64位win10下,在vb.net2015中使用oledb调取mdb数据库中的数据,建立OleDbConnection连接时候,使用
Provider=Microsoft.Jet.OLEDB.4.0
会提示
网上的做法是换为
Provider=Microsoft.Jet.OLEDB.10.0
但是仍然提示错误:
信息提示为缺少数据驱动提供导致。
经查看本机odbc可以看到32位的数据驱动很齐全:
但是64位的数据驱动却寥寥无几:
那么按照微软提供的解决方案是安装 Microsoft Access 2010 数据库引擎可再发行程序包
具体网址:https://www.microsoft.com/zh-CN/download/details.aspx?id=13255
但是,下载对应的数据库引擎需要对应本机安装的office,而不是根据系统来下载安装的。
如果安装的是64位win10和32位office,那么就只能安装32为数据库引擎,vs编译的时候需要编译为32位程序。
如果想编译为64位程序,请把32位office卸载后换为64位office。
一番折腾下来,似乎安装office的时候选择了安装access,那么就不用再安装那个数据库引擎了,在odbc(64位)中也能看到有mdb、xls的驱动程序了:
数据库的连接字符串为
Provider=Microsoft.ACE.OLEDB.12.0;data source=数据库全路径