C# 通过OLEDB连接ACCDB格式MS-ACCESS数据库

C# 通过OLEDB连接ACCDB格式MS-ACCESS数据库,c#,.net,vb.net,ms-access,oledb,C#,.net,Vb.net,Ms Access,Oledb,我最近在C#或VB.NET中使用.NET连接MS-ACCESS数据库。它与MDB的预期效果一样,但在accdb中却导致了一个异常 conn.Open(); 具体如下: 还有别的办法吗?我的初衷(如中所述)是收集一些(实际上,很多)字段。使用ACE 4驱动程序,下载它,然后使用以下连接字符串: “Provider=Microsoft.ACE.OLEDB.12.0;数据源=C:\marcelo.accdb;Jet-OLEDB:Database Password=MyDbPassword;”我想是

我最近在C#或VB.NET中使用.NET连接MS-ACCESS数据库。它与MDB的预期效果一样,但在accdb中却导致了一个异常

conn.Open();
具体如下:


还有别的办法吗?我的初衷(如中所述)是收集一些(实际上,很多)字段。

使用ACE 4驱动程序,下载它,然后使用以下连接字符串:


“Provider=Microsoft.ACE.OLEDB.12.0;数据源=C:\marcelo.accdb;Jet-OLEDB:Database Password=MyDbPassword;”

我想是的。或者使用瘦客户端创建客户端-服务器应用程序,瘦客户端使用reader.GetValue(3).ToString()创建,你知道为什么它不使用getstring,即使它是一个名称吗?@Andrey我在这里问了一个相关的问题:,你能检查一下吗答案中的关键点是MDB是Jet 4格式(或更早的格式,例如Jet 3.x,在Jet 4提供程序中向后可读),ACCDB是ACE的格式(实际上是Jet 4.5或可能是Jet 5),因此您需要使用ACE的提供程序(也可以读取/写入Jet 4/3.x,可能是Jet 2.x).它实际上在没有任何传统安装的情况下工作,但我保留链接,以防客户端需要..谢谢!