连接到MS Access(accdb)数据库时出现问题

时间:2018-06-20 10:48:18

标签: c# ms-access

我需要在C#应用程序中使用OdbcConnection类连接到MS Access数据库(* .accdb)。

下面是我尝试过的代码:

string connetionString = "Driver={Microsoft Access Driver (*.accdb)};DBQ=C:\\Temp\\Database4.accdb";

OdbcConnection myConnection = new OdbcConnection(connetionString);

try
{                   
    myConnection.Open();

    myConnection.Close();
}
catch (Exception ex)
{
}

但是在myConnection.Open()调用上它得到了以下异常。

  

“错误[IM002] [Microsoft] [ODBC驱动程序管理器]数据源名称不正确   找到并且未指定默认驱动程序”

但是如果我使用如下所示的连接字符串,则以上代码适用于.mdb文件:

string connetionString = "Driver={Microsoft Access Driver (*.mdb)};DBQ=C:\\Temp\\Database4.mdb";

但是我的要求是连接到.accdb文件。

您对我的代码或连接字符串格式有什么疑问吗?

1 个答案:

答案 0 :(得分:0)

我使用以下代码使其工作:

    const string connetionString = @"Driver={Microsoft Access Driver (*.mdb, *.accdb)};Dbq=C:\Temp\Database4.accdb";
    OdbcConnection myConnection = new OdbcConnection(connetionString);
    myConnection.Open();
    myConnection.Close();

    Console.WriteLine("Done.");
    Console.ReadLine();

但是它仅适用于x86配置,不适用于x64配置。对于x64配置,我们必须使用OleDbConnection类。

谢谢大家。