p align="left">Четвертая таблица - “Main” - связывает таблицу “Country” и “Language”, она нужна для уменьшения объёма базы данных. Описание полей их типов и назначения в таблице “Main” приведено в таблице 3.4. Таблица 3.4 - Поля таблицы “Main.db” |
НАЗВАНИЕ ПОЛЯ | ТИП ПОЛЯ | ОПИСАНИЕ | | ID | Long Integer | Данное поле является ключевым и служит для связывания двух таблиц | | ID_Country | Long Integer | Данное поле служит для связывания c таблицей “Country”, ссылка на номер страны | | ID_Language | Short | Данное поле служит для связывания c таблицей “Language”, ссылка на номер языка | | |
4 Разработка программы 4.1 Программная реализация В результате работы над курсовым проектом была разрабоатна программа на языке Object Pascal, реализующая базу данных флагов мира. Программа состоит из 7 модулей и файла проекта. 4.2 Анализ программного кода Функции и обработчики событий программы. Форма MainForm: procedure bbAddCountryClick(Sender: TObject); procedure bbAddLanClick(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure bbEditCountryClick(Sender: TObject); procedure Button5Click(Sender: TObject); procedure Button6Click(Sender: TObject); procedure bbSeekClick(Sender: TObject); procedure bbDelCountryClick(Sender: TObject); procedure sbSeekClick(Sender: TObject); procedure DBGrid2DblClick(Sender: TObject); procedure sbAddLanClick(Sender: TObject); procedure sbAddCountryClick(Sender: TObject); procedure sbEditCountryClick(Sender: TObject); procedure sbDelCountryClick(Sender: TObject); Форма frmNewCountry procedure bbOpenDialogClick(Sender: TObject); procedure FormShow(Sender: TObject); procedure cbLanguage1Change(Sender: TObject); procedure cbLanguage2Change(Sender: TObject); procedure cbLanguage3Change(Sender: TObject); procedure bbCreateClick(Sender: TObject); procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); Форма frmEditCountry procedure FormShow(Sender: TObject); procedure cbLanguage1Change(Sender: TObject); procedure cbLanguage2Change(Sender: TObject); procedure cbLanguage3Change(Sender: TObject); procedure bbOpenDialogClick(Sender: TObject); procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); Форма frmView procedure FormShow(Sender: TObject); procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); Форма frmNewLanguage procedure bbCreateClick(Sender: TObject); procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); Форма DM (Data Module) procedure DataModuleCreate(Sender: TObject); procedure mmSortCountryCountryClick(Sender: TObject); procedure mmSortCountryCapitalClick(Sender: TObject); procedure mmSortLanAscClick(Sender: TObject); procedure mmSortLanDesClick(Sender: TObject); procedure mmSortKontinentAscClick(Sender: TObject); procedure mmSortKontinentDesClick(Sender: TObject); procedure mmAboutClick(Sender: TObject); procedure mmExitClick(Sender: TObject); procedure tbKontinentAfterScroll(DataSet: TDataSet); procedure mmAddCountryClick(Sender: TObject); procedure mmAddLanClick(Sender: TObject); procedure mmEditCountryClick(Sender: TObject); procedure mmDelCountryClick(Sender: TObject); procedure mmSeekClick(Sender: TObject). 5 Описание программы 5.1 Интерфейс пользователя Общий вид интерфейса пользователя представлен на рисунке 5.1.1. Рисунок 5.1.1 - Интерфейс пользователя Разработанный интерфейс пользователя отвечает поставленной задаче. Выдача информации наглядна - имеется таблица, с помощью которой пользователь может легко выбрать интересующий его континент, а потом страну. Также предусмотрена помощь пользователю в виде появляющихся в строке подсказок сообщений. Для удобства пользователей данной прикладной программы было спроектировано меню инструментов, позволяющее редактировать базу данных, сортировать и искать записи. Данное меню состоит из таких частей: редактирование, сортировка, поиск. Подпункты меню “Работа с БД”: — Добавить язык - добавляет новые записи в таблицу языков. — Добавить страну - добавляет новые записи в таблицу стран. -- Редактировать страну - изменяет имеющиеся записи в таблице стран. -- Удалить страну - удаляет ненужные записи из таблицы стран. Подпункты меню “Сортировка”: — Континентыпрямая - сортирует таблицу континентов по полю континент от А до Я. — Континентыобратная - сортирует таблицу континентов по полю континент от Я до А. — Языкипрямая - сортирует таблицу языков по полю континент от А до Я. — Языкиобратная - сортирует таблицу языков по полю континент от Я до А. — Страныпо странам - сортирует данные по исполнителю. -- Страныпо столицам - сортирует данные по песне. Рис. 5.1.2 Добавление новой страны С помощью этой формы пользователь может создать новую страну. При нажатии кнопки «Загрузить рисунок» появится диалоговое меню выбора файла формата «BMP» в котором содержится изображение флага. Имеется контроль за правильностью выбора языков (т.е языки не могут повторяться, не может существовать второго государственного языка если не существует первого и т.п.). После заполнения формы пользователь должен нажать кнопку «Создать запись» и если форма заполнена корректно - запись создастся, а если нет, то выскочит предупреждение об ошибке. Рисунок 5.1.3 - Добавление нового языка С помощью этой формы пользователь может создать новый язык. После заполнения формы пользователь должен нажать кнопку «Создать запись» и если форма заполнена корректно - язык будет создан, а если нет, то выскочит предупреждение об ошибке. Рисунок 5.1.4 - Редактирование стран С помощью этой формы пользователь может редактировать существующую страну. При нажатии кнопки «Загрузить рисунок» появится диалоговое меню выбора файла формата «BMP» в котором содержится изображение флага. Имеется контроль за правильностью выбора языков (т.е языки не могут повторятся, не может существовать второго государственного языка если не существует первого и т.п.). После заполнения формы пользователь должен нажать кнопку «Сохранить изменения» и если форма заполнена корректно - изменения в БД сохранятся, а если нет, то выскочит предупреждение об ошибке. Рисунок 5.1.5 - Поиск страны После того как появилось диалоговое окно надо ввести название страны, причём название должно быть полностью идентичное находящемуся в таблице (к примеру страна «украина» не будет найдена в отличии от «Украина») . Когда поле заполнено следует нажать кнопку “OK”. 5.2 Инструкция пользователя Для работы с базой данных аудио файлов не надо создавать через DataBase Desktop Alias, т.к. базы уже находятся в корневой папке и запуск программы должен осуществляться следующим образом: <диск>\<путь>\Flags.exe 5.3 Системные требования к программе Для функционирования данной программы требуется: -- 32-х разрядная операционная система Windows 95/NT4 или выше. -- персональный компьютер Pentium 133 -- 8Мб свободного места на жестком диске -- монитор VGA -- клавиатура -- минимум 16Мб оперативной памяти Выводы В курсовом проекте была разработына программа базы данных флагов мира с использованием базы данных Paradox 7. Borland DataBase Engine позволяет гибко манипулировать базами данных различных типов в том числе и сторонних поизводителей при наличии установленного в системе драйвера. Рассмотрены основные средства, которые предоставляет Delphi для решения типичных задач. Имеются несколько основных компонентов (объектов), которые необходимо использовать постоянно для доступа к БД. Эти объекты могут быть разделены на три группы: не визуальные: TTable, TQuery визуальные: TDBGrid, TDBEdit, TDBImage связующие: TDataSource Первая группа включает не визуальные классы, которые используются для управления таблицами и запросами. Эта группа сосредотачивается вокруг компонент типа TTable, TQuery, TDataSet и TField. В Палитре Компонент эти объекты расположены на странице Data Access. Вторая важная группа классов - визуальные, которые показывают данные пользователю, и позволяют ему просматривать и модифицировать их. Эта группа классов включает компоненты типа TDBGrid, TDBEdit, TDBImage. В Палитре Компонент эти объекты расположены на странице Data Controls. Имеется и третий тип, который используется для того, чтобы связать предыдущие два типа объектов. К третьему типу относится только не визуальный компонент TDataSource. Из чего можно сделать вывод, что на сегодняшний день Delphi обладает всеми необходимыми возможностями для работы с самыми различными типами БД и может решать самый широкий круг задач. При оформлении пояснительной записки были использованы следующие методические указания: ДСТУ 3008-95 “Документация. Отчеты в сфере науки и техники. Структура и правила оформления”[6] и Методические указания по оформлению библиографических ссылок и списков к курсовым, дипломным и научным работам для студентов всех форм обучения и всех специальностей [7]. Перечень ссылок 1. Дэн Оузер, и др. Delphi 3. Освой самостоятельно / Пер. с англ. - М.: «Издательство БИНОМ», 1998 г. - 550 с.: ил. 2. Вирт Н. Алгоритмы и структуры данных: пер. с англ. - М.: Мир, 1989. - 360 с., ил. 3. Зелковиц М., Шоу А., Гэннон Дж. Принципы разработки программного обеспечения: пер. с англ. - М.: Мир, 1982. - 386 с., ил. 4. Практическое руководство по программированию: пер. с англ./ Б. Мик, П. Хит, Н. Рашби и др.; под ред. Б. Мика, П. Хит, Н. Рашби. - М.: Ра-дио и связь, 1986. - 168 с., ил. 5. Эндрю Возневич Delphi. Освой самостоятельно: пер. с англ. - М.: Восточная книжная компания, 1996. - 736 с., ил. 6. ДСТУ 3008-95 “Документация. Отчеты в сфере науки и техники. Структура и правила оформления” - государственный стандарт Украини. 7. Л.П. Гуданова, А.П. Мальцев, Л.П. Щербакова и др. Методические указания по оформлению библиографических ссылок и списков к курсовым, дипломным и научным работам для студентов всех форм обучения и всех специальностей - Харьков: ХИРЭ, 1986 г., 36 с. Приложение А Файл реализации модуля “Main.pas” unit Main; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Grids, DBGrids, ComCtrls, ExtCtrls, ToolWin, Buttons, DBCtrls, DB; type TMainForm = class(TForm) Panel2: TPanel; Panel3: TPanel; Panel1: TPanel; Panel4: TPanel; bbSeek: TBitBtn; bbAddLan: TBitBtn; bbAddCountry: TBitBtn; bbEditCountry: TBitBtn; bbDelCountry: TBitBtn; imFlag: TDBImage; Panel5: TPanel; Panel6: TPanel; pcMain: TPageControl; TabSheet1: TTabSheet; DBGrid1: TDBGrid; TabSheet2: TTabSheet; DBGrid2: TDBGrid; TabSheet3: TTabSheet; DBGrid3: TDBGrid; ToolBar1: TToolBar; sbAddLan: TSpeedButton;
Страницы: 1, 2, 3, 4, 5
|