gpt4 book ai didi

c# - 如何在 C# 中打开与 Microsoft Access 数据库的连接

转载 作者:太空狗 更新时间:2023-10-29 20:21:04 27 4
gpt4 key购买 nike

我正在使用 Microsoft Access 创建我的数据库。这是我的代码:

static string Constr = "Provider=Microsoft.Jet.OLEDB.4.0;" 
+ "Data Source = MyData.accdb";
OleDbConnection Conn = new OleDbConnection(Constr);
DataSet DataSet1 = new DataSet();
string SQLstr = "Select * from Tabel";
OleDbDataAdapter DataAdapter1;
Conn.Open();

我遇到了这个异常:

An unhandled exception of type 'System.Data.OleDb.OleDbException' occurred in System.Data.dll

Additional information: Unrecognized database format

最佳答案

您正在尝试使用只能理解使用 Access 2003 创建的 MDB 文件的 OleDb 提供程序打开使用 Access 2007/2010 (accdb) 创建的 Access 数据库

要使用的提供程序是 Microsoft.ACE.OleDB.12.0,它应该已经安装了最新版本的 Office。

或者,您可以从 Microsoft Access Database Engine 下载适当的位
请注意下载适合您使用的平台(x86 或 x64)的版本。

这就是要使用的连接字符串

Provider=Microsoft.ACE.OLEDB.12.0;Data Source=MyData.accdb";

注意:请记住,如果您安装了 Office,则相应的提供程序具有与 Office 相同的位数,因此 64 位 Office 附带 64 位版本的 ACE,32 位版本也是如此。这种情况给您的应用程序部署带来了一个非常困难的问题。您需要使用相同的位数编译您的应用程序,否则您将无法使用安装的提供程序。 (或者卸载不兼容的 Office 版本并重新安装兼容的版本。当然,如果您应该能够说服您的客户 Office 是不兼容的应用程序:-)

关于c# - 如何在 C# 中打开与 Microsoft Access 数据库的连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14024660/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com