- •Создание базы данных в среде Visual Studio .Net
- •Просмотр структуры базы данных
- •Views – представления таблиц, т.Е. Вид таблицы при выводе на экран;
- •Создание таблиц
- •Установление связи между таблицами
- •Поставщики (провайдеры) данных
- •Получение сторонних поставщиков данных ado .Net
- •Классы, которые зависят от поставщика
- •Компоненты Visual Studio для вывода данных таблицы
- •Соединение с базой данных ms Access
- •Программный доступ к базе данных Access
Соединение с базой данных 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();
}