Это первый раз, когда я использую соединение С# с db, также я не использую доступ. Я просто хочу знать начальные шаги, необходимые для подключения доступа db к Visual Studio С# windows application. Я искал в Интернете, Он очень помог. Я не могу найти свою ошибку в коде. Я думаю, что мне не хватает некоторых шагов в установлении связи с db.
вот ошибка, возникающая при попытке запустить программу "\ f38910\Users\kainat.baig\Desktop\AAA\Database101" не является допустимым путем. Убедитесь, что имя пути написано правильно и что вы подключены на сервер, на котором находится файл. "
КОД:
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();
}
Вы забываете добавить .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=;"
Редакция:
для ACCESS 2010
@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=\\f38910\Users\kainat.baig\Desktop\AAA\Database101.accdb"
Сначала ваше имя файла не имеет имени расширения файла, такого как .mdb
Database101\MyDB.mdb
Во-вторых, если он в сети. Было бы лучше, если бы вы net use
первую очередь приглашение DOS для указания буквы диска для вашей сети, например:
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 Explorer и просто нажмите на путь, где находится ваш файл, и скопируйте его.
f38910
- сетевой компьютер, то он должен быть запущен с \\.
.mdb