我需要在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文件。
您对我的代码或连接字符串格式有什么疑问吗?
答案 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类。
谢谢大家。