【问题标题】:Database connection to access in C#在 C# 中访问数据库连接
【发布时间】:2014-04-29 09:43:30
【问题描述】:

我正在尝试使用 access 数据库在 C# 中为酒店预订系统创建登录名,不幸的是我遇到了以下错误;

“Microsoft.ACE.OLEDB.12.0”提供程序未在本地计算机上注册。

我对此进行的大部分研究是人们没有在他们的机器上安装 Access。但是因为我确实安装了它并且仍然遇到这个问题,所以我对此感到非常困惑。如果有人对此有任何建议或解决方案,我将不胜感激!

我正在使用文件阅读器类,对于该类中的任何方法,它总是在“Conn.Open()”命令中显示错误,这是我其中一种方法的代码。

公共数据表 LoadLogin() { string connString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=F:"没有得到我的连接字符串:p"; 数据表结果 = new DataTable();

        using (OleDbConnection conn = new OleDbConnection(connString))
        {
            OleDbCommand cmd = new OleDbCommand("SELECT User_Name, Password FROM Employee", conn);
            conn.Open();


            OleDbDataAdapter adapter = new OleDbDataAdapter(cmd);
            adapter.Fill(results);


        }
        return results;

    }

【问题讨论】:

  • 您的应用程序是否针对 64 位?
  • 据我记得,这意味着你必须安装那个包
  • 你的办公室是多少位数,你的代码是多少位数? x64 或 x86 ... 美元到甜甜圈说这是位不匹配
  • 我已经安装了它,但它没有工作

标签: c# ms-access oledbconnection


【解决方案1】:

这可能是因为您正在编译和运行 32 位,但使用的是 64 位 Access 驱动程序。另一种可能性是您安装了 32 位版本的 Access,在这种情况下,您需要使用 "Microsoft.Jet.OLEDB.4.0" 作为提供程序字符串来编译和运行 x86 程序。

很遗憾,您无法将程序的位数与您正在使用的 Access 提供程序的位数混用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-18
    • 2011-08-10
    相关资源
    最近更新 更多