我可以通过Windows 10(64位)计算机上的odbc驱动程序访问没有Microsoft Access应用程序的Microsoft Access文件吗?

时间:2018-03-16 05:26:28

标签: c# odbc

我想在Windows 10(64位)中运行c#代码。 该代码使用odbc访问Microsoft Access文件。 该代码适用于具有Microsoft Access 2010和2013的PC。 但是它无法访问没有Microsoft的PC上的文件 访问应用程序我可以在没有Microsoft Access Application的情况下访问该文件。或者我是否需要安装“Microsoft Access Driver 64bit版本”之外的东西才能访问该文件?

我做的是以下,

(1)我安装了“Microsoft Access Driver(* .mdb, .accdb)”64位版本。 (2)我确认ODBC数据源管理员将ACEODBC.DLL识别为“Microsoft Access驱动程序( .mdb,* .accdb)”。

以下显示了调用odbc驱动程序的代码部分。

    public static DataTable simpleQuery(string query, string pathToDatabase )
    {
        DataTable dt = new DataTable();
        try
        {
            using (var con = new OdbcConnection())
            {
                con.ConnectionString = 
                    @"Driver={Microsoft Access Driver (*.mdb, *.accdb)};" +
                    @"Dbq=" + pathToDatabase + ";";

                con.Open();

                OdbcDataAdapter adapter = new OdbcDataAdapter(query, myConnectionString);

                adapter.Fill(dt);
                con.Close();
            }
            return dt;

        }
        catch (Exception e)
        {
            throw;
        }
    }

非常感谢。

1 个答案:

答案 0 :(得分:0)

我解决了这个问题。

该机器有32位Microsoft Office,尽管它运行在64位Windows上。 所以我需要安装Microsoft Access Driver(* .mdb,.accdb)32位版本,而不是64位版本。

谢谢。