在wpf应用程序中访问mdb文件

时间:2013-05-15 09:46:09

标签: c# wpf ms-access

我们在wpf项目中使用访问文件.mdb文件,此文件在ms access 97之间创建。

它提供异常,例如“无法打开数据库”。它可能不是您的应用程序识别的数据库,或者文件可能已损坏。“

但有时它并不总是在使用以下适配器调用查询时发出此异常:

tblAccountTableAdapter accountAdapter = new tblAccountTableAdapter();
            DateTime? syskey = accountAdapter.GetSysKeyofAccount(accountNumber);

连接字符串:

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\Data\mmlp.mdb;Persist Security Info=True

从上面的查询调用'GetSyskeyofAccount()'它给出了上面的异常,有时它给出了另一个查询,所以它不会只粘贴一个查询来提供异常。

我尝试了很多次来发现这个问题,并且很难找到它在不同地方提供例外的地方。

我的文件只有KB大小,所以任何人都可以帮助我。

谢谢, NAG

1 个答案:

答案 0 :(得分:0)

根据运行的计算机和您尝试连接的MDB的版本,您可能更好地使用ACE驱动程序(或者它们可能实际上是您唯一的选择)

JET 4.0驱动程序仅允许您读取Office 2003格式,包括Office 2003。对于Office 2007及更高版本,您将需要使用ACE驱动程序

也没有64位JET驱动程序,这可能是您无法使用JET连接的另一个原因。

但是,32位和64位ACE驱动程序都是向后兼容的

驱动程序可在此处获取: Microsoft Access Database Engine 2010 Redistributable

此处详细说明要使用的连接字符串: Connection strings for Access 2007