无法打开Access ODBC连接

时间:2013-02-16 07:54:50

标签: c# ms-access odbc connection-string

我有一个程序,在其中测试它是否可以建立数据库连接。它通过ODBC连接到SQL Server数据库,或通过ODBC连接到Microsoft Access(.mdb)。 Sql一个正常,但我不知道如何让访问一个工作。

System.Data.Odbc.OdbcConnection odbcConn = new System.Data.Odbc.OdbcConnection();
if ({SQL})//If SQL, setup SQL server connection string
    odbcConn.ConnectionString = @"Driver={SQL Server};Server={server};Database={DB};@";Uid=     {uid};Pwd={pwd};";
else //Otherwise it's access so setup access string
    odbcConn.ConnectionString = @"Driver={Microsoft Access Driver (*.mdb)};Dbq={path}\test.mdb;Pwd={pwd};";

string testQuery = "SELECT 1";
OdbcCommand odbcComm = new OdbcCommand(testQuery);
try
{
   odbcComm.Connection = odbcConn;
   odbcConn.Open();
   odbcComm.ExecuteNonQuery();
}

这适用于SQL Server。不管我做了什么,我都无法使用Access连接它,即使我有另一个程序只是使用该连接字符串进行访问并且工作正常,但它在这里不起作用。我尝试了以下操作:

odbcComm.CommandText = "Select 1";
OdbcDataReader data = odbcComm.ExecuteReader();

这也不起作用。我错过了什么?打开Access连接需要做什么?它在odbcConn.Open()行失败了。

1 个答案:

答案 0 :(得分:0)

好吧,自己的问题已经过了2分钟太晚了。事实证明,Microsoft Access没有64位驱动程序。应用程序的目标是64位,因此无法找到干燥器。我只是改为x86,它工作正常。