这是我第一次使用C#连接db,我也不使用访问权限。 我只想知道将访问数据库连接到visual studio C#windows应用程序所需的初始步骤。 我通过互联网搜索过,它帮助了很多。我无法在代码中找到错误。我想我错过了与db建立连接的一些步骤。
这是我尝试运行程序时出现的错误"' \ f38910 \ Users \ kainat.baig \ Desktop \ AAA \ Database101'不是一个有效的道路。确保路径名拼写正确,并且您已连接到文件所在的服务器。"
CODE:
OleDbConnection bookConn;
OleDbCommand oleDbCmd = new OleDbCommand();
String connParam = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source= \\f38910\Users\kainat.baig\Desktop\AAA\Database101; Persist Security Info=False";
public Form1()
{
bookConn = new OleDbConnection(connParam);
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
bookConn.Open(); //*ERROR LINE
oleDbCmd.Connection = bookConn;
bookConn.Close();
}
答案 0 :(得分:1)
首先,您的文件名没有.mdb
Database101\MyDB.mdb
其次,如果它在网络中。如果您{DOS}提示为您的网络分配驱动器号,请先net use
会更好吗,例如:
net use z: \\f38910\Users\kainat.baig\Desktop\AAA\Database101 your_password /USER:your_account
然后你的连接字符串会缩短:
String connParam = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source= z:\MyDB.mdb; Persist Security Info=False";
顺便说一下,如果文件扩展名为.accdb
而不是.mdb
,则应该是:
String connParam = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=z:\MyDB.mdb;;Persist Security Info=False;"
或者仅仅是你的道路是错误的。
转到Windows资源管理器,然后在您的文件所在的路径上碰撞并复制粘贴它。
答案 1 :(得分:0)
如果您使用.mdb
或更高版本的数据库,则忘记在数据库名称后添加.accdb
或Microsoft Office Access 2007
,但为此您还必须更改提供程序。
String connParam = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source= \\f38910\Users\kainat.baig\Desktop\AAA\Database101.mdb; Persist Security Info=False";
或者你可以像这样使用连接字符串
String connParam = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\\f38910\Users\kainat.baig\Desktop\AAA\Database101.mdb;User Id=admin;Password=;"
<强>编辑:强>
for ACCESS 2010
@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=\\f38910\Users\kainat.baig\Desktop\AAA\Database101.accdb"