Содержание
Содержание
Введение3
1 Теоретическая часть4
1.1 СУБД Access4
1.2Delphi и БД Access6
1.2.1 Доступ к таблице базы данных6
1.2.2 Просмотр базы данных9
2 Практическая часть12
2.1 Спецификация задачи12
2.1.1 Название задачи12
2.1.2 Описание12
2.1.3 Управление режимами работы программы15
Заключение22
Список литературы27
Выдержка из текста работы
В данной курсовой работе рассматривается метод создания баз данных с использованием BDE ADMINISTRATOR. В ходе выполнения работы была спроектирована база данных «Аудиотека».
Курсовая работа содержит:
Листов печатного текста — 24
Рисунков — 11
Таблиц — 3
Библиографических источников — 7
Содержание
Введение
1. Теоретическая часть
1.1 Анализ и оценка эффективности существующей системы обработки информации
1.2 Особенности СУБД
1.3 Выбор технических и программных средств
1.4 Описание этапов проектирования
2. Практическая часть
2.1 Разработка инфологической модели
2.2 Разработка базы данных
2.3 Разработка программного приложения
Заключение
Список литературы
Приложение 1
Приложение 2
Введение
Целью данной курсовой работы является проектирование базы данных: перечень аудиофайлов, который должен включать в себя информацию о песнях: название альбома, тип файла.
Задачи курсового работы: описание этапов проектирования, разработка базы данных для хранения информации об аудиофайл, разработка программного приложения по обработке данных формированию выходных документов, описание возможной области применения этой базы данных.
1. Теоретическая часть
1.1 Анализ и оценка эффективности существующей системы обработки информации
В данной курсовой работе рассматривается система проката аудиокассет и дисков. Главная таблица содержит весь перечень аудиофайлов . В нее записывается следующая информация: название, тип, и номер клиента.
С главной таблицей связана другая таблица, которая несет информацию о каждом клиенте. Таблица имеет следующие поля: номер клиента, : ФИО, адрес, номер телефона.
1.2 Особенности СУБД
Любое предприятие, учреждение или организацию можно рассматривать как информационную систему, состоящую из элементов, связей между ними по которой циркулируют информацию. К организации данных в таких системах предъявляются следующие требования:
1- Интеграция данных т.е. данные хранятся централизованно составляя динамические обновляемые требования предметной области
2- Максимальная независимость программ от данных выполнение этих требований ведет к тому, что создаются отдельные блоки данных и разрабатываются программы манипулирующие данными на физическом уровне. 1-е называются базами данных, а 2-е СУБД.
База данных — это совокупность данных обладающих следующими качествами: интегрированность, независимость, взаимосвязанность.
СУБД- это пакет программ позволяющий обеспечить пользователю языковые средства описания и манипулирования данных, обеспечить поддержку логической модели данных, обеспечить операцию отображения данных, обеспечить защиту и целостность данных.
Основная особенность СУБД — это наличие процедур для ввода и хранения не только самих данных, но и описаний их структуры.
1.3 Выбор технических и программных средств
Для моей базы данных минимальные требования к используемым техническим и программным средствам: операционная система Microsoft Windows 07 корпорации Microsoft Corporation, процессор 468DX, объем оперативной памяти 16 (32) Мб, занимаемый объем на ЖМД 80 Мб, текстовый редактор Microsoft Word, принтер, а также программа С++ Builder.
С++ Builder — среда объектно-ориентированного визуального проектирования, в которой можно создавать офисные, бухгалтерские, инженерные, информационно-поисковые программы, взаимодействующие во время использования с пользователем благодаря многооконному графическому интерфейсу. Среда Builder позволяет работать с простыми локальными удаленными базами данных и с многозвенными распределенными БД. В среде C++Builder разработка программ ведется на основании современного метода — объектно-ориентированного программирования.
Приложения строятся средой Borland C++ Builder в виде специальных конструкций-проектов, которые выглядят для пользователя как совокупность нескольких файлов. Ни одна программа не может существовать вне структуры-проекта. Действия по управлению проектами осуществляет специальный программный комплекс — Менеджер проектов.
С++ Builder позволяет:
?создавать базы данных любых типов с помощью его инструментария Database Desktop;
?формировать и печатать из приложения сложные отчеты с графиками и таблицами;
? создавать системы помощи для своих и других приложений;
?связывать свои приложения с продуктами Microsoft Excel, Word;
? создавать системы работы с локальными и удаленными базами данных любых типов.
1.4 Описание этапов проектирования
1.Инфологическая модель БД.
Этапом инфологической модели является этап проектирования БД на котором составляется инфологическая модель и схемы взаимосвязи можно определить, что данный этап является первым.
Под инфологической моделью понимают описание предметной области, выполненное с использованием специальных языковых средств, не зависящих от используемых в дальнейшем программных средств (это по существу блок-схема алгоритма создания базы данных).
Требования к инфологической модели:
— адекватное отображение предметной области;
— непротиворечивость;
— должна отражать взгляды и потребности всех пользователей системы;
— однозначная трактовка моделей;
— модель должна быть конечной;
— модель должна быть легко расширяемой, то есть иметь возможность ввода новых (удаления) данных без изменения ранее определенных;
— должна обладать свойствами композиции и декомпозиции (укреплять базу данных или расщеплять);
— должна быть легко реализуемой на ЭВМ;
— должна быть независимой от оборудования и языков организации базы данных на ЭВМ.
Цель инфологического моделирования — обеспечение наиболее естественных для человека способов сбора и представления той информации, которую предполагается хранить в создаваемой базе данных.
Основными конструктивными элементами инфологических моделей являются сущности, связи между ними и их свойства (атрибуты).
Сущность — любой различимый объект (объект, который мы можем отличить от другого), информацию о котором необходимо хранить в базе данных. Сущностями могут быть люди, места, самолеты, рейсы, вкус, цвет и т.д. Необходимо различать такие понятия, как тип сущности и экземпляр сущности. Понятие тип сущности относится к набору однородных личностей, предметов, событий или идей, выступающих как целое. Экземпляр сущности относится к конкретной вещи в наборе. Например, типом сущности может быть ГОРОД, а экземпляром — Москва.
Атрибут — поименованная характеристика сущности. Его наименование должно быть уникальным для конкретного типа сущности, но может быть одинаковым для различного типа сущностей (например, ЦВЕТ может быть определен для многих сущностей: СОБАКА, АВТОМОБИЛЬ, ДЫМ и т.д.). Атрибуты используются для определения того, какая информация должна быть собрана о сущности.
Ключ — минимальный набор атрибутов, по значениям которых можно однозначно найти требуемый экземпляр сущности. Минимальность означает, что исключение из набора любого атрибута не позволяет идентифицировать сущность по оставшимся.
Связь — ассоциирование двух или более сущностей. Если бы назначением базы данных было только хранение отдельных, не связанных между собой данных, то ее структура могла бы быть очень простой. Однако одно из основных требований к организации базы данных — это обеспечение возможности отыскания одних сущностей по значениям других, для чего необходимо установить между ними определенные связи. А так как в реальных базах данных нередко содержатся сотни или даже тысячи сущностей, то теоретически между ними может быть установлено более миллиона связей. Наличие такого множества связей и определяет сложность инфологических моделей. Связь между объектами и характеризующими его свойствами изображается в виде линий, соединяющих обозначение объекта и его свойств. Свойства могут быть единичными или множественными. Обычно для изображения связей между объектом и единичным свойством используется единичная стрелка, а для множественных свойств — двойная стрелка. Свойства могут быть статическими и динамическими.
2. Даталогическая модель БД.
Этап проектирования БД на котором создается датологическая модель называется этапом даталогического проектирования. Даталогическая модель является моделью логического уровня и представляет собой отображение логических связей между элементами данных. Эта модель строится в единицах допустимых конкретной СУБД. Описание логической структуры с помощью средств СУБД называется схемой. Так как это осуществляется с помощью конкретной СУБД, то модели должны быть описаны на языке описания данных этой СУБД. Такое описание и называют даталогической моделью данных.
3. Физическая модель БД.
Для привязывания даталогической модели к среде хранения используется модель данных физического уровня. Эта модель определяет используемые запоминающие устройства, способы представления данных в среде хранения. Модель физического уровня строится также с учетом возможностей, предоставленных СУБД. Таким образом, нужные данные отыскиваются СУБД на внешних запоминающих устройствах по физической модели данных.
2. Практическая часть
2.1 Разработка инфологической модели
база данные программный приложение
После проведенного анализа предметной области можно перечислить основные характеристики, необходимые при хранении: название файла, тип файла.
Проектирование базы данных начнем с построения инфологической модели. Сущностью в инфологической модели является аудиотека, характеристики аудиотеки являются атрибутами сущности. Идентификатором сущности является название, позволяющий однозначно идентифицировать объект.
На рис.1 представлена полученная инфологическая модель.
Рис.1
2.2 Разработка базы данных для хранения и обработки информации.
На основе полученной инфологической модели построим схему данных (даталогическую модель данных). Она представлена в двух таблицах (для каждой сущности).
Схема данных для хранения информации о Песнях.
Таблица 1. Схема данных для хранения информации об аудиотеке.
№ |
Наименование |
Назначение |
Тип |
Размерность |
|
1 |
Name |
Наименование |
Символьный |
25 |
|
2 |
Type |
Тип |
Символьный |
20 |
|
3 |
N_K |
Номер клиента |
Числовой |
Таблица 2. Схема данных для хранения информации о клиентах.
№ |
Наименование |
Назначение |
Тип |
Размерность |
|
1 |
N_K |
Номер клиента |
Числовой |
||
2 |
Fio |
ФИО |
Символьный |
20 |
|
3 |
Adress |
Адрес |
Символьный |
15 |
|
4 |
Tel |
Номер телефона |
Числовой |
Прежде, чем начать строить приложения, работающие с базами данных, надо иметь сами базы данных. Вместе с BDE и Borland C++Builder поставляется программа Database Desktop, которая позволяет создавать таблицы баз данных некоторых СУБД, задавать и изменять их структуру. Для каждого поля создаваемой таблицы, прежде всего, указывается имя (Field Name) — идентификатор поля. Он может включать до 25 символов и не может начинаться с пробела (но внутри пробелы допускаются). Затем надо выбрать тип (Type) данных этого поля. Для этого перейдите в раздел Type поля и щелкните правой кнопкой мыши. Появится список доступных типов, из которого вы можете выбрать необходимый вам.
Разные СУБД по-разному организуют и хранят базы данных. СУБД Paradox используют для каждой таблицы отдельный файл. В этом случае база данных — это каталог, в котором хранятся файлы таблиц. Для создания такого каталога — базы данных необходимо запустить инструмент BDE Administrator (Borland Database Engine) из меню Пуск| Программы| C++Builder.В левой половине окна расположен список существующих баз данных. Создадим новую базы данных. Для этого с главного меню зададим команду Object | New. На данную команду BDE выведет окно. Переименовав название STANDART на BOLNIE, и задав путь, где располагаются таблицы базы данных (Path — обычно это каталог Database Desktop\Workdir) закончим работу с BDE. Итак, мы можем создавать таблицы для базы данных ВУЗов. Загрузим инструментарий Database Desktop. Через главное меню составим команду File | New | Table. На запрос системы выберем платформу таблиц СУБД Paradox v.7. В открывшееся окно введем структуру таблицы aud.db.
В этой таблице первичным ключом установим Наименование аудиотеки (поле Name).
Введем данные в таблицу. Для этих целей можно использовать горячую кнопку «Open Table». В открывшуюся таблицу необходимо внести данные о песнях. Для этих целей на панели инструментов расположена кнопка редактирования (Edit Data), «нажатие» которой добавляет новую запись с данными по умолчанию, готовую для редактирования. Введем перечень песен, имеющихся в аудиотеке.
Аналогичными действиями создадим таблицу info.db.В этой таблице первичным ключом установим номер клиента (поле N_K).
Введем данные в таблицу.
2.3 Разработка программного приложения
Язык SQL (Structured Query Language — язык структурированных запросов) был создан Microsoft в конце 70-ых годов и получил через некоторое время широкое распространение. Он позволяет формировать весьма сложные запросы к базам данных. Запрос — это вопрос к базе данных, возвращающий запись или множество записей, удовлетворяющих вопросу.
C++Builder позволяет приложению при помощи запросов SQL использовать данные:
* Таблиц PARADOX и dBase используется синтаксис локального SQL.
* Локального сервера InterBase — полностью поддерживается соответствующий синтаксис.
* Удаленных серверов SQL через драйверы SQL Links.
В Borland C++Builder имеется специальный компонент набора данных Query, являющийся аналогом Таblе, но позволяющий работать с SQL
1. Создание простого приложение. Подключение к форме компонентов DataSource, Query, DBGrid , причем в качестве базы данных используем созданные нами таблицы. Выведение в сетку таблицы (DBGrid).
Откроем новое приложение (File/New/Application) Borland C++Builder, перенесём на форму компонент Query со страницы библиотеки Data Access (BDE) и установим его свойство DatabaseName равным имени созданной нами базы данных (BIBL). Поместим на форму компонент DataSource1со страницы Доступ к данным (Data Access). Его свойству Name соответствует Datasource1, а свойству DataSet задайте Query1. Поместим также на форму компонент DBGrid (Управление данными — Data Control) и в его свойстве DataSource зададим DataSource1.
Теперь наше приложение для экспериментов с языком SQL готово. Операторы SQL можем писать в свойстве SQL компонента Queryl, а чтобы увидеть результаты выполнения написанного оператора, надо будет устанавливать значение свойства Active компонента Queryl в true. Это надо будет делать после записи каждого нового оператора. В свойстве SQL запишем оператор: Select Name as Название, Type as Тип, N_K as Номер клиента.
Установим свойство Active в true и убедимся, что все работает нормально: в DBGridI должно отобразиться содержимое таблицы Bibl. Добавив компоненту DBNavigator и установив свойство DataSource равным DataSource1.
Создадим другую аналогичную цепочку, перенеся на форму компоненты Query2, DataSource2, DBGrid2, и связав ее с таблицей Info.db запросом в компоненте Qnery2.: select N_K as Номер клиента, FIO as ФИО,Adres as Адрес, Telefon as Телефон from Info
Установим свойство Active компонента Query2 в true и в DBGrid2 должно отобразиться содержимое таблицы Info. Запустим приложение и убедимся, что оно работает, причем таблицы независимы. Теперь давайте, свяжем эти таблицы. Делается это следующим образом. Изменим текст запроса в свойстве SQL вспомогательного компонента набора данных Query2 на: select N_K as Номер клиента, FIO as ФИО,Adres as Адрес, Telefon as Телефон from Info where (N_K=:Название)
В этом запросе мы указываем условие отбора: значение поля N_K должно быть равно параметру Название. Для этого в свойстве DataSource компонента Query2 надо сослаться на: DataSource1 — источник данных, связанный с таблицей Aud. Это скажет приложению, что оно должно взять значения параметра «Название» из текущей записи этого источника данных. Таким образом, вспомогательная таблица, запрашиваемая в Query2, оказывается связанной с головной таблицей, запрашиваемой в Query1.
Для некоторых компонент в свойстве Font, Color установлены определенные цвета фоновой заливки, шрифта для большей привлекательности страницы.
Рис.2. Страница запросы к данным
На странице ввод и редактирование размещаем: компоненты доступа к данным DataSource1, Table1. К компоненте Table1 в ИО установим свойства DatabaseName = Aud, TableName = Aud.db, а компоненте DataSource свойство DataSet = Table1. Для отображения данных используем компоненты DBGrid1. Для управления перемещением используем компоненту DBNavigator.
Аналогичным способом организуем ввод и редактирование данных в таблицах aud, Info,
Рис.3. Страница ввод и редактирование
Для фильтрации и поиска данных в проект новую форму (Form3). Свяжем ее с главной формой. Поместив на Form1 компонент Button2 (Caption=Фильтрация и поиск данных) и описать событие OnClick, обеспечим вызов второй формы.
На странице «Поиск и Фильтрация» размещаем: по одному компоненту DBGrid, DBNavigator, 1 компонентов Edit, 2 компонент ComboBox и 1 компонент RadioGroup.
Для компоненты RadioGroup установлены такие свойства: Caption=Фильтрация, Items=Все, Номер билета, Columns=3. В событии OnClick компонента RadioGroup записываем код который будет осуществлять фильтрацию (Приложение 1).
В свойствах Items для компонента ComboBox1(CB1) перечислены все авторы. В свойствах Items для компонента ComboBox2(CB2) перечислены все жанры.Свойству ItemIndex присвоено значение 0. Для каждой компоненты Edit размещены компоненты Label с соответствующими надписями. Для компоненты Edit1 в событии OnChange записываем соответствующий код который будет осуществлять поиск (Приложение 1). Использованные также свойства Font и Color придали странице вид. После выполнения всех указанных действий и создания программного кода на этой странице компоненты PageControl будет происходить поиск и фильтрование данных.
Рис.3. Страница Поиск и фильтрация данных.
Заключение
Вся проделанная работа заключалась в автоматизации введения учета файлов в аудиотеке программы Borland C++ Builder 6. С помощью этой программы можно осуществлять автоматизации и других предметных областей.
Созданный БД позволяет осуществлять ввод новых данных, изменять имеющиеся в базе данных данные и удалять старые.
Работа с программой Borland C++ Builder 6 актуальна в наше время, многие информатики-экономисты используют ее в своей практической работе.
Список использованной литературы
1. Архангельский А.Я. Программирование в C++ Builder 6 — М: ЗАО «Издательство БИНОМ» 2002 г.
2. Архангельский А.Я. Работа с локальными базами данных в C++ Builder 5 — М: ЗАО «Издательство БИНОМ», 2000 г.Диго С.М. Проектирование баз данных. М.: Финансы и статистика, 2002 г.
3. Архангельский А.Я. Интегрированная среда разработки C++ Builder 5 — М: ЗАО «Издательство БИНОМ», 2000 г.
4. Архангельский А.Я. Программирование в C++ Builder 6 — М: ЗАО «Издательство БИНОМ» 2002 г.
5. Марков А.С. Базы данных. Введение в теорию и методологию. М.: Финансы и статистика, 2002 г.
6. Мейер Д. Теория реляционных баз данных. М., 1987. 608 с., ил.
7. Тихонов А.Ф., Тихонова Л.Н. Visual FoxPro 5.0. М., 1997. 466 с.
Приложение 1
Листинг программы
#include <vcl.h>
#pragma hdrstop
#include «Unit1.h»
//—————————————————————————
#pragma package(smart_init)
#pragma resource «*.dfm»
TForm1 *Form1;
//—————————————————————————
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
//—————————————————————————
void __fastcall TForm1::RGFClick(TObject *Sender)
if (RGF->ItemIndex==0)
Table1->Filtered = false;
else
if (RGF->ItemIndex==1)
Table1->Filter=»N_K='»+CB->Text+»‘»;
Table1->Filtered = true;
//—————————————————————————
void __fastcall TForm1::Edit1Change(TObject *Sender)
RGF->ItemIndex=0;
Table1->FindNearest(&TVarRec(Edit1->Text),0);
//—————————————————————————
void __fastcall TForm1::CBChange(TObject *Sender)
if (RGF->ItemIndex==0)
Table1->Filtered = false;
else
if (RGF->ItemIndex==1)
Table1->Filter=»N_K='»+CB->Text+»‘»;
Table1->Filtered = true;
Приложение 2
Результат работы программы.
Размещено на