Как запросить базу данных MS Access с помощью приложения C #? - PullRequest
3 голосов
/ 31 октября 2011

У меня есть приложение, которое использует Microsoft.Office.Interop.Excel для извлечения данных из книги Excel. Информация в рабочей книге Excel была перемещена в базу данных Access, и мне было поручено обновить приложение, чтобы оно выполняло поиск данных в базе данных. Я нашел ссылку Microsoft.Office.Interop.Access, но как мне использовать ее, чтобы открыть базу данных и выполнить запросы? Документация по этому вопросу в MSDN, кажется, несколько отсутствует. Может быть, я смотрю не в том месте ...: \ Приложение C # использует .NET 3.5. Спасибо.

Ответы [ 3 ]

3 голосов
/ 31 октября 2011

Я не собираюсь повторять все, что есть в MSDN, здесь есть отличная прогулка: http://msdn.microsoft.com/en-us/library/ms971485.aspx

Тем не менее, обратите внимание, что вам не нужно использовать сборки взаимодействия, они ужасно медленные, сложные в использовании и, в общем, просто PIA.

Как показано в статье MSDN, все, что вы хотите сделать, можно сделать с помощью ADO.NET.

1 голос
/ 31 октября 2011

Самый простой способ - использовать ADO.Net для доступа к нему, как и к любой другой базе данных. Создайте объект OleDbConnection, передав соответствующую строку соединения. Вот пример:

var conn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\emp.mdb;");
1 голос
/ 31 октября 2011

Вам потребуется добавить базу данных Access в качестве источника данных.

Это довольно просто; см. этот пример: http://msdn.microsoft.com/en-us/library/bb655884%28v=vs.90%29.aspx

Как только вы установили соединение, вы можете либо использовать SQL напрямую, либо создать табличные адаптеры с методами, которые вы вызываете для выполнения того, что вам нужно для работы с базой данных.

На этой странице MSDN есть множество пунктов "How I I ...", связанных с доступом к БД: http://msdn.microsoft.com/en-us/library/ms186197%28v=VS.90%29.aspx

...