📌  相关文章
📜  Microsoft.ACE.OLEDB.12.0;Data Source= "ACE 不是 micorsoft 的成员" (1)

📅  最后修改于: 2023-12-03 15:32:54.163000             🧑  作者: Mango

Microsoft.ACE.OLEDB.12.0数据提供程序介绍

Microsoft.ACE.OLEDB.12.0是一种OLE DB数据提供程序,它提供了访问Microsoft Access数据库的方法。它支持Access 2007及以上版本的数据库文件。

安装

你可以从Microsoft官网下载并安装Microsoft Access Database Engine Redistributable。

使用

在使用Microsoft.ACE.OLEDB.12.0开始之前,你需要在你的程序中添加对System.Data.OleDb命名空间的引用。

这是一个使用Microsoft.ACE.OLEDB.12.0连接到Access数据库,在其中执行一个查询的例子:

using System.Data.OleDb;

class Program
{
    static void Main(string[] args)
    {
        string connectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\myFolder\\myAccessFile.accdb;";
        string query = "SELECT * FROM myTable";

        using (OleDbConnection connection = new OleDbConnection(connectionString))
        using (OleDbCommand command = new OleDbCommand(query, connection))
        {
            connection.Open();
            OleDbDataReader reader = command.ExecuteReader();

            while (reader.Read())
            {
                Console.WriteLine(reader["myColumn"].ToString());
            }

            reader.Close();
        }
    }
}
注意事项
  • Microsoft.ACE.OLEDB.12.0只支持Microsoft Access 2007及以上版本的数据库文件。
  • 如果你的程序运行在64位操作系统上,你需要使用64位版本的Microsoft.ACE.OLEDB.12.0
  • 如果你同时安装了32位和64位的Office,你需要使用32位版本的Microsoft.ACE.OLEDB.12.0连接到32位的Access数据库文件,使用64位版本连接到64位的Access数据库文件。
  • 在连接字符串中使用了空格,这可能会导致连接错误。要避免这个问题,最好是将它们放在引号之外。
参考资料