Лабораторная работа

Цель работы: изучить методику применения технологии ADO для доступа к базам данных.

Назначение программы: программа позволяет в среде Delphi просматривать информацию в базе данных, созданной в среде Ассеss, выполнять поиск информации на основе задания фильтра, выполнять сортировку по заданному полю.

Порядок выполнения работы :

Создадим в Access базу данных Contact.mdb а в ней таблицу с именем Contact. База данных будет иметь 3 поля: Familia, Telefon, Adres. Введите в базу данных 10 записей, содержащих информацию о фамилии, телефоне, адресе клиентов.

Установите на форму компоненты ADOConnection, ADODataSet со страницы ADO; компонент DataSource со страницы DataAccess, компонет DBGrid со страницы DataControls.

Настраиваем компонент ADOConnection

Свойство ConnectionString, кнопка Build, вкладка поставщик данных, выбираем драйвер

Microsoft Office 12.0 Access Database Engine OLE DB Provider.

Затем вкладка подключение: укажите источник данных – путь к базе данных, например с:\contact.accdb, далее проверяем подключение. Должно быть выведено сообщение “Проверка подключения выполнена”.

Настраиваем компонент ADODataSet

Свойство Connection устанавливаем в ADOConnection1,

В свойстве Command Text задаем SQL запрос:

Select Adres, Familia, Telefon from Contact

Cвойство Active устанавливаем в True.

Настраиваем компонент Data Source

Свойство Data Set устанавливаем в ADODataSet1

Настраиваем компонент DBGrid

Cвойство DataSource устанавливаем в DataSource1

По событию активизации формы обработчик события имеет вид:

procedure TForm1.FormActivate(Sender: TObject);

begin

AdoConnection1.Open();

AdoDataSet1.Active:=true;

end;

Устанавливаем на форму 2 кнопки: в свойствах Caption которых запишем “Поиск” и “Отмена поиска”. Обработчик события кнопки “Поиск” имеет вид:

procedure TForm1.Button1Click(Sender: TObject);

begin

ADoDataSEt1.Filtered:=true;

ADODataSet1.Filter:=’Familia Like %’+Edit1.Text+’%';

end;

Обработчик события кнопки “Отмена поиска” имеет вид:

procedure TForm1.Button2Click(Sender: TObject);

begin

ADoDataSEt1.Filtered:=False;

end;

Сортировка методом SQL-запроса.

Устанавливаем на форму 2 кнопки: в свойствах Caption которых запишем “Сортировка” и “Отмена сортировки”. Обработчик события кнопки “Сортировка” имеет вид:

procedure TForm1.Button3Click(Sender: TObject);

begin

AdoDataSet1.Close();

AdoDataSet1.commandtext:=’select adres, familia, telefon from contact order by Familia’;

AdoDataSet1.Open();

end;

Обработчик события кнопки “Отмена сортировки” имеет вид:

procedure TForm1.Button4Click(Sender: TObject);

begin

AdoDataSet1.Close();

AdoDataSet1.commandtext:=’select adres, familia, telefon from contact’;

AdoDataSet1.Open();

end;

Сортировка с помощью свойства IndexFieldNames компонента АDODataSet1

Устанавливаем на форму 2 кнопки: в свойствах Caption которых запишем “Сортировка” и “Отмена сортировки”. Обработчик события кнопки “Сортировка” имеет вид:

procedure TForm1.Button5Click(Sender: TObject);

begin

AdoDataSet1.IndexFieldNames:=’Familia’;

end;

Обработчик события кнопки “Отмена сортировки” имеет вид:

procedure TForm1.Button6Click(Sender: TObject);

begin

AdoDataSet1.IndexFieldNames:=»;

end;

На рис представлен внешний вид формы: