МИНОБРНАУКИ РОССИИ
Федеральное государственное автономное образовательное учреждение высшего профессионального образования «Южный федеральный университет»
Факультет |
РАДИОТЕХНИЧЕСКИЙ |
|
Кафедра |
|
МИКРОПРОЦЕССОРНЫХ СИСТЕМ |
Отчет по лабораторной работе №4 по дисциплине:
«Объектно-ориентированное программирование».
На тему: «Создание приложения баз данных для СУБД Access».
Выполнил: |
|
студент группы Р-102 |
В.Г.Горчаков |
Проверил:доцент каф. МПС |
М.И.Ледовской |
Таганрог 2013 г.
Цель работы:
Продолжить изучение принципов ООП и его преимуществ, получить практические навыки разработки приложения баз данных на основе технологии доступа к данным ADO.
Задание:
1.Обеспечить приложению доступ к таблицам локальной СУБД.
2.Разработать интерфейс для приложения баз данных для СУБД Access, обеспечить навигацию по таблицам.
3.Выполнить настройку полей таблицы.
4.Выполнить связывание таблиц.
5.Выполнить компилирование проекта и обеспечить запуск приложения.
Выполнение работы
1. Создаем новый проект с формами Form1 и DataModule2. Разместим на форме DataModule2 следующие компоненты:
ADOConnection, обеспечивающий расширенное управление соединением с хранилищем данных;
ADOTable1,2,3, обеспечивающий доступ к таблицам локальных СУБД;
DataSourse1,2,3, обеспечивающий связь компонентов доступа к данным с визуальными компонентами, которые отображают данные.
Рис.1. Форма DataModule2 с размещаемыми на ней компонентами
Таблица 1: «Свойства компонентов»
Компонент |
Свойства компонентов |
Устанавливаемые |
|
значения свойств |
|||
|
|
||
ADOTable1 |
Connection |
ADOConnection1 |
|
TableName |
Школы |
||
|
Active |
True |
|
ADOTable2 |
Connection |
ADOConnection2 |
|
TableName |
Участники олимпиад |
||
|
Active |
True |
|
ADOTable3 |
Connection |
ADOConnection3 |
|
TableName |
Победители олимпиад |
||
|
Active |
True |
|
DataSourse1,2,3 |
DataSet |
ADOTable1,2,3 |
2. Разместим на главной форме Form1 компоненты отображения данных DBGrid и компонент DBNavigator из категории Data Controls
палитры компонентов среды Delphi.
Рис.2. Форма Form1 с размещаемыми на ней компонентами
3.Устанавливаем ширину полей таблицы, чтобы они отображались через компонент DBGrid1 нужным образом. Для этого изменим свойства компонента ADOTable1. Если дважды щелкнуть по компоненту ADOTable1, то появится окно, где можно настраивать поля набора данных. Щелчок правой кнопки мыши по этому окну вызывает контекстное меню, где надо выбрать команду Add all fields. В окне настроек полей появятся все поля таблицы «Телефонный справочник». Каждое поле является объектом, свойство которого можно настраивать через инспектор объектов среды
Delphi.
4.С помощью свойства Master Fields компонента ADOTable установим связи между полями «Школа» и «Номер» таблиц «Школы» и «Участники олимпиад» и между полями «Номер участника» и «Номер участника» таблиц «Участники олимпиад» и «Победители олимпиад» соответственно.
5. Выполним компилирование и запуск приложения.
Рис.3. Графический интерфейс приложения
Код программы:
Unit1.pas
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, DB, ADODB;
type
TData = class(TForm) DataSource1: TDataSource; DataSource2: TDataSource; DataSource3: TDataSource; ADOConnection1: TADOConnection; Members: TADOTable;
Winners: TADOTable;
Schools: TADOTable; SchoolsDSDesigner: TWideStringField; SchoolsDSDesigner2: TWideStringField; SchoolsDSDesigner3: TWideStringField; SchoolsDSDesigner4: TIntegerField; SchoolsDSDesigner5: TWideStringField; SchoolsDSDesigner6: TIntegerField; MembersDSDesigner: TAutoIncField; MembersDSDesigner2: TWideStringField; MembersDSDesigner3: TWideStringField; MembersDSDesigner4: TIntegerField; MembersDSDesigner5: TWideStringField; MembersDSDesigner6: TWideStringField; WinnersDSDesigner: TAutoIncField; WinnersDSDesigner2: TWideStringField; WinnersDSDesigner3: TWideStringField; WinnersDSDesigner4: TIntegerField;
private
{Private declarations } public
{Public declarations }
end;
var
Data: TData;
implementation
{$R *.dfm}
end.
Unit2.pas
unit Unit2;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Grids, DBGrids;
type
TForm2 = class(TForm) DBGrid1: TDBGrid; DBGrid2: TDBGrid; DBGrid3: TDBGrid;
private
{Private declarations } public
{Public declarations }
end;
var
Form2: TForm2;
implementation
uses Unit1;
{$R *.dfm}
end.
Project1.dpr
program Project1;
uses Forms,
Unit1 in 'Unit1.pas' {Data}, Unit2 in 'Unit2.pas' {Form2};
{$R *.res}
begin Application.Initialize;
Application.CreateForm(TForm2, Form2); Application.CreateForm(TData, Data); Application.Run;
end.
Вывод:
В ходе лабораторной работы изучены принципы работы по взаимодействию среды Delphi c внешними объектами, например, с MS Access Получены навыки переноса баз данных в приложения.