Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Л1_Технология ADO.doc
Скачиваний:
14
Добавлен:
11.07.2019
Размер:
520.7 Кб
Скачать

Соединение с базой данных ms Access

Вначале запустим Access и создадим базу данных. Назовем эту базу данных AccessDB и сохраним ее в корневой папке D:. В этой базе данных Access также создайте две таблицы Person и Deps и заполняйте эти таблица с несколькими записями. Пользовательский интерфейс MS Access достаточно прост, как выполнить создание таблиц и заполнение их данными вы наверно, догадаетесь без проблем.

Теперь переходим в среду Visual Studio .NET и подключимся на эту базу данных. Для этого выполним команду Tools/ Connect to Database. При этом появляется окно подключения к базе данных.

Пока это окно настроено для подключения к базе данных MS SQL Server. Для соединения к базе данных Access в поле Data source следует поменять поставщика базы данных. Для этого щелкните на кнопке Change, при этом появляется окно:

В этом окне выберите строку Microsoft Access Database File и нажмите на кнопку OK. Тогда появится окно подключения к базе данных, где следует указать параметров соединения:

С помощью кнопки Browse выберите файл базы данных: D:\Access.mdb и нажмите на кнопку OK. Тогда в окне Server Explorer появится выбранная база данных:

Программный доступ к базе данных Access

Теперь рассмотрим как программа может иметь доступ к базе банных Access. В этом случае строка соединения имеет следующий вид:

string connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;

Data source=D:\\AccessDb.mdb";

Обратите внимание на использование двух символов обратной косой черты (\\) в пути к файлу D:\Access.mdb.

Для доступа к базе данных Microsoft Access необходимо использовать объекты OleDbConnection, OleDbCommand и OleDbAdapter. Методы этих классов такие же, что и методы соответствующих классов для соединения к SQL-серверу.

Для изменения предыдущего приложения, для работы с базой данных Access везде поменяйте префикс Sqlна префиксOleDb.

Подключайте пространство имен: using System.Data.OleDb; Тогда получите приложение, в котором имеется доступ к базе данных Access. Ниже приведем код этого приложения:

using System;

using System.Data;

using System.Data.OleDb;

. . . . . . . . . . . . . . . . . .

private void button1_Click(object sender, EventArgs e)

{

//Создание связи с базой данных

string ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;"+

"Data source=D:\\AccessDb.mdb";

OleDbConnection myOleDbConnection =

new OleDbConnection(ConnectionString);

myOleDbConnection.Open();

//Создание SQL-команды

string selectString = "SELECT Name, Post, Oklad FROM Person";

OleDbCommand myOleDbCommand = myOleDbConnection.CreateCommand();

myOleDbCommand.CommandText = selectString;

//Закрепление SQL-адаптеру объекта команды

OleDbDataAdapter myOleDbDataAdapter = new OleDbDataAdapter();

myOleDbDataAdapter.SelectCommand = myOleDbCommand;

//Определение набора данных DataSet и заполнение его

DataSet myDataSet = new DataSet();

myOleDbDataAdapter.Fill(myDataSet, "PersonData");

DataTable myDataTable = myDataSet.Tables["PersonData"];

// Вывод данных на экран

foreach (DataRow personRow in Persons.Rows)

{

listBox1.Items.Add(personRow["Name"]);

listBox2.Items.Add(personRow["Oklad"]);

listBox3.Items.Add(personRow["BirthDay"]);

}

// Выход из приложения

myOleDbConnection.Close();

}

25