我正在使用VS 2010和C#。我想在C#中连接到MDB。 “到目前为止,我所做的工作如下:
string strAccessConn = "Provider=Microsoft.ACE.OLEDB.4.0;Data Source=C:\\Databases\\"+DBname+".mdb";
DataSet myDataSet = new DataSet();
OleDbConnection myAccessConn = null;
try
{
myAccessConn = new OleDbConnection(strAccessConn);
OleDbCommand myAccessCommand = new OleDbCommand(Query, myAccessConn);
OleDbDataAdapter myDataAdapter = new OleDbDataAdapter(myAccessCommand);
myAccessConn.Open();
myDataAdapter.Fill(myDataSet, "Table");
}
catch(Exception Ex)
{
MessageBox.Show(Ex.ToString());
}
finally
{
myAccessConn.Close();
}
数据库返回有效的DataSet ......这不是Access 2000数据库的问题
但是当我将连接字符串更改为
时string strAccessConn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Databases\\"+DBname+".mdb";
对于MSAccess2007,找不到数据库路径,并且虽然它存在,但会生成异常。我错过了任何参考资料吗?
答案 0 :(得分:0)
尝试将您的Access数据文件扩展名从.mdb
更改为.accdb
:
"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Databases\\"+DBname+".accdb";
请参阅connectionstrings.com以供参考。