如何使用c#连接到Access 2007

嘿,我是连接到数据库的新手,由于某种原因,每次我使用以下行,我的程序崩溃:

string connectionString = "Provider=Microsoft.ACE.OLEDB.12.0;DataSource=|DataDirectory|\Company.accdb" OleDbConnection con = new OleDbConnection(connectionString); 

在我的调试文件夹里面我得到了Company.accdb访问文件编辑:我得到’Microsoft.Ace.OLEDB12.0’提供商没有在本地机器上注册任何想法如何解决? 在此先感谢您的帮助

两件事情 –

  1. 此连接字符串依赖于ACE OLEDB提供程序(通常随Office 2007一起提供 – 您的计算机需要具有此提供程序)
  2. 连接字符串正在请求数据字典。 您可能需要使用以下表单:

    Provider = Microsoft.ACE.OLEDB.12.0; Data Source = C:\ myFolder \ myAccess2007file.accdb; Persist Security Info = False;

对于受密码保护的文件,表单为Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\myFolder\myAccess2007file.accdb;Jet OLEDB:Database Password=MyDbPassword;

我还建议尝试使用不同的Provider(也许是ODBC)。 有关Access 2007的各种连接字符串,请参阅http://www.connectionstrings.com/access-2007