C#读/写Access DB文件

时间:2010-07-12 12:27:11

标签: c# wpf ms-access

我想使用C#应用程序写入Access数据库文件,可能使用WPF ...我也希望该文件受密码保护...是否可以在密码保护时连接到它或者我应该删除它密码?

3 个答案:

答案 0 :(得分:2)

使用OleDbConnection(System.Data.OleDb)和正确的连接字符串。

Provider = Microsoft.Jet.OLEDB.4.0; Data Source = C:\ mydatabase.mdb; User Id = admin; Password =;

答案 1 :(得分:2)

我们与MS Access的C#.Net4.0 Windows Forms数据连接如下所示:

using System.Data.OleDb;
...
private void DoIt()
{
  OleDbConnection NamesDB = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=CyberSprocket.mdb");

  try
  {
     NamesDB.Open();
  }
  catch (Exception ex) {
      MessageBox.Show(ex.Message);
      return;
  }
  OleDbCommand NamesCommand = new OleDbCommand("SELECT * FROM [names];", NamesDB);
  OleDbDataReader dr = NamesCommand.ExecuteReader();

  string theColumns = "";
  for (int column = 0; column < dr.FieldCount; column++)
  {
    theColumns += dr.GetName(column) + " | ";
  }
  MessageBox.Show(theColumns);

  NamesDB.Close();
}

答案 2 :(得分:1)

是的,您可以使用受密码保护的MS Access数据库。

在连接到MS Access数据库的字符串中,您可以提供USERNAMEPASSWORD

根据实施的安全类型,这里有两个样本:

使用系统数据库的工作组安全性

"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\\Server\Share\MyData.mdb;Jet OLEDB:System Database=\\Server\Share\MyData.mdw;USER=userid, PWD=password"

使用标准MS Access安全性:

"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\\Server\Share\MyData.mdb;User ID=userid;Password=password;"