База данных "Экскурсия"

Разработка программного продукта - базы данных "Экскурсия" в интегрированной среде программирования C++ Builder 6. Определение порядка просмотра данных базы, их редактирования и удаления. Особенности руководства пользователя и общего интерфейса программы.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 03.11.2013
Размер файла 2,4 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

17

Размещено на http://www.allbest.ru/

1

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

Федеральное государственное общеобразовательное учреждение высшего профессионального образования

«Чувашский государственный университет имени И.Н. Ульянова»

Факультет дизайна и компьютерных технологий

Кафедра компьютерных технологий

КУРСОВОЙ ПРОЕКТ

По дисциплине:

«Программирование на ЯВУ»

Тема: «База данных “Экскурсия”»

Выполнил: студент ДиКТ-21-09

Сергеев Евгений Сергеевич

Проверила: Павлова Н.В.

Чебоксары 2010

Содержание

1. Введение

2. Постановка задачи

3. Выбор метода

4. Теоретический раздел

5. Инструкция программиста

6. Инструкция пользователя

7. Заключение

8. Список используемой литературы

9. Приложение

1. Введение

Программа предназначена для работы с базой данных «Экскурсия».

Свойства программы - быстрый ввод, обработка и поиск данных в данной базе. Программа включает в себя следующие процедуры: создание новой базы данных, просмотр существующей базы данных, редактирование записей, их добавление и удаление , поиск записей и сортировка записей по данному полю.

База данных -- организованная в соответствии с определёнными правилами и поддерживаемая в памяти компьютера совокупность данных, характеризующая актуальное состояние некоторой предметной области и используемая для удовлетворения информационных потребностей пользователей.

2. Постановка задачи

Разработать программу для управления базой данных «Экскурсии». Запись в базе данных содержит следующие поля: наименование, страна, стоимость, продолжительность, транспорт.

Наименование

Страна

Стоимость

Продолжительность

Транспорт

3. Выбор метода

RAD (от англ. rapid application development -- быстрая разработка приложений) -- концепция создания средств разработки программных продуктов, уделяющая особое внимание быстроте и удобству программирования, созданию технологического процесса, позволяющего программисту максимально быстро создавать компьютерные программы. С конца XX века RAD получила широкое распространение и одобрение. Концепцию RAD также часто связывают с концепцией визуального программирования.

C++ Builder (CBuilder ) -- один из самых первых инструментов RAD для C++, и единственный инструмент RAD, который предоставляет возможность программирования в стиле drag-and-drop (перенести-и-бросить), основанного на компонентах. Трудно переоценить влияние, которое приобрел этот стиль программирования под Windows в последние несколько лет. Изначально программирование под Windows было полным ошибок кошмаром, включавшим в себя редактирование текстов под MSDOS, компиляцию, компоновку и использование SDK (Software Development Kit, прикладной пакет разработки). Неудивительно поэтому, что первые программы под Windows были полны ошибок и требовали годы на разработку. Современные программы пишутся за недели вместо лет (однако прежнего количества ошибок это не отменяет ). C++ Builder поможет разрабатывать приложения не только быстрее, но и с меньшим количеством ошибок.

Первой ступенью эволюции программирования под Windows стало появление языка программирования C++ и библиотек классов C++, которые заключали в себе сотни строк кода, необходимых даже для простейшего отображения окна на экране, и представлялись в программе на C++ всего несколькими строчками. Этот код попросту заключает несколько сот строк кода на С в классы С++. Теперь мы не только избавлены от необходимости писать эти сотни строк, но и количество ошибок в коде, заключенном в классах С++, уменьшается фантастическим образом.

Вторым поколением средств разработки для Windows стало появление средств интегрированной среды разработки (Integrated Development Environment, IDE). Эти средства позволяют программисту редактировать, компилировать и компоновать программы непосредственно в одном приложении.

Интегрированные средства отладки появились чуть позже и были быстро взяты на вооружение программистами.

Следующий шаг эволюции средств разработки стал результатом развития концепции каркасов (framework). Каркас-- это основа, скелет вашего приложения, который объединяет в себе все части Вашего приложения. Каркасы кода действительно очень похожи на стены, балки, водопровод и электрические коммуникации строительных каркасов зданий.

Настоящей проблемой технологии каркасов является их ограничения. Несмотря на то, что каркасы действительно ускоряют разработку приложений, предоставляя в распоряжение разработчика многие из основных функций нормального Windows - приложения, они сразу же встают на пути приложения, которое не укладывается в привычные рамки.

Есть еще один аспект CBuilder, на который многие программисты не обращают внимания в усердных попытках освоить мир визуальных форм CBuilder. Не слишком глубоко в системе CBuilder зашита невероятно мощная и чрезвычайно гибкая среда программирования баз данных.

CBuilder является по существу первой системой программирования баз данных для C++.

Во многих системах разработки приложений на C++ интерфейс с базами данных часто выглядит как запоздалая идея сделать некоторые фрагменты баз данных доступными программисту в виде жестко навязанного узкого круга объектов. Интерфейс с базами данных во многих системах C++ состоит из набора объектов, которые являются лишь тонкими обложками, скрывающими под собой низкоуровневые функции баз данных. Вовсе не является необычным для объектов баз данных содержать в себе методы, требующие десятков параметров для открытия и инициализации присоединения к базе данных ODBC (Open Database Connectivity, базы данных с открытой связью).

CBuilder содержит полный набор управляющих элементов для работы с данными (data-aware controls), которые вообще не требуют программирования. Можно написать вполне законченный редактор баз данных, который бы добавлял новые, редактировал существующие и удалял ненужные записи, не написав ни единой строчки кода на C++, что на Visual Basic или Visual C++ представляется практически невыполнимой задачей.

Итак, что же такое C++ Builder?

Это-- законченный, гибкий инструмент RAD, предоставляющий высочайшие возможности в работе с базами данных, основанная на компонентах технология, простота использования и мощное средство разработки. Он содержит превосходный компилятор стандарта ANSI C++, при полной поддержке таких новых технологий, как шаблоны (templates), именованные области видимости (namespaces), обработка исключительных ситуаций(exception handling), и библиотека стандартных шаблонов (Standard Template Library, STL).

4. Теоретические сведения

Схема взаимодействия компонентов C++ Builder с базой данных

5. Инструкция программиста

Создание таблицы

Для работы с таблицами используется программа Database Desktop (Пуск -- Выполнить -- dbd32). Внимание: при работе в терминальном классе сразу после запуска программы измените пути к Private directory и Working directory (соответствующие пункты в меню File) -- там должны быть указаны каталоги, в которые у вас есть право записи, например, C:\Work.

Чтобы создать новую таблицу, необходимо выбрать пункт меню File -- New -- Table и согласиться с типом таблицы Paradox 7. После этого вам будет предложено указать, какие поля содержатся в таблице. Каждое поле имеет имя (идентификатор, состоящий из латинских букв, цифр и знака подчёркивания) и тип. Определены несколько типов, из которых наиболее часто используемыми являются:

Alpha -- строка, необходимо также указать максимальную длину в поле Size; Number -- вещественное число;

Long Integer -- целое число;

Date -- дата;

Time -- время;

+ (Autoincrement) -- автоинкрементное поле.

Одно или несколько полей можно сделать ключами (Key), тогда СУБД будет требовать, чтобы значения этих полей или группы полей не повторялись в пределах таблицы. Если поле имеет тип Autoincrement, значения ему будут присваиваться автоматически базой данных при добавлении новой записи в таблицу. Удобно делать поля ID всех таблиц (кроме, конечно, таблиц связи) + (Autoincrement) и ставить им атрибут Key.

После создания таблицы её необходимо сохранить, выбрав в поле Alias внизу диалогового окна имя созданной базы данных. Затем таблицу можно открыть для добавления начальных данных. Для редактирования записей необходимо перейти в режим редактирования (Table -- Edit data или F9), а для сохранения данных -- выйти из режима редактирования.

Для изменения структуры таблицы используется пункт меню Table -- Restructure. Таблица при этом не должна использоваться в Borland C++ Builder.

Компоненты используемые в программе:

Компонент Table

Свойство

Определяет

Name

Имя компонента. Используется для доступа к свойствам компонента

DatabaseName

Имя базы данных, частью которой является таблица (файл данных), для доступа к которой применяется компонент. В качестве значения свойства следует использовать псевдоним базы данных

TableName

Имя файла данных (таблицы данных), для доступа к которому используется компонент

TableType

Тип таблицы. Таблица может быть набором данных в формате Paradox (ttParadox),dBase (ttDBase), FoxPro (ttFoxPro) или представлять собой форматированный текстовый файл(ttASCIl)

Active

Признак того, что таблица активна (файл данных открыт). В результате присваивания свойству значенияtrue происходит открытие файла таблицы

Компонент DataSource

Компонент DataSource действует как посредник между компонентами TDataSet (TTable, TQuery, TStoredProc) и компонентами Data Controls - элементами управления, обеспечивающими представление данных на форме. Компоненты TDataSet управляют связями с библиотекой Borland Database Engine (BDE), а компонент DataSource управляет связями с данными в компонентах Data Controls.

В типичных приложениях БД компонент DataSource, как правило, связан с одним компоненом TDataSet (TTable или TQuery) и с одним или более компонентами Data Controls (такими, как DBGrid, DBEdit и др.). Связь этого компонента с компонентами TDataSet и DataControls осуществляется с использованием следующих свойств и событий:

· Cвойство DataSet компонента DataSource идентифицирует имя компонента TDataSet. Можно присвоить значение свойству DataSet на этапе выполнения или с помощью инспектора объектов на этапе проектирования.

· Cвойство Enabled компонента DataSource активизирует или останавливает взаимосвязь между компонентами TDataSource и Data Controls. Если значение свойства Enabled равно true, то компоненты Data Controls, связанные с TDataSource, воспринимают изменения набора данных. Использование свойства Enabled позволяет временно разъединять визуальные компоненты Data Controls и TDataSource, например, для того, чтобы в случае поиска в таблице с большим количеством записей не отображать на экране пролистывание всей таблицы.

· Свойство AutoEdit компонента DataSource контролирует, как инициируется редактирование в компонентах Data Controls. Если значение свойства AutoEdit равно true, то режим редактирования начинается непосредственно при получении фокуса компонентом Data Controls, связанным с данным компонентом TDataSet. В противном случае режим редактирования начинается, когда вызывается метод Edit компонента TDataSet, например, после нажатия пользователем кнопки Edit на компоненте DBNavigator. · Событие OnDataChange компонента DataSource наступает, когда происходит изменение значения поля, записи, таблицы, запроса.

· Cобытие OnUpdateData компонента DataSource наступает, когда пользователь пытается изменить текущую запись в TDataSet. Обработчик этого события следует создавать, когда требуется соблюсти условия ссылочной целостности или ограничения, накладываемые на значения полей изменяемой базы данных.

Компонент DBGrid

Компонент TDBGrid обеспечивает табличный способ отображения на экране строк данных из компонентов TTable или TQuery. Приложение может использовать TDBGrid для отображения, вставки, уничтожения, редактирования данных БД. Обычно DBGrid используется в сочетании с DBNavigator, хотя можно использовать и другие интерфейсные элементы, включив в их обработчики событий методы First, Last, Next, Ptior, Insert, Delete, Edit, Append, Post, Cancel компонента TTable.

Компонент DBNavigator

Значок компонента DBNavigator находится на вкладке Data Controls

Компонент DBNavigator

Кнопки компонента DBNavigator

Свойство

Определяет

DataSource

Компонент, являющийся источником данных. В качестве источника данных может выступать база данных (компонент Database), таблица (компонент Table) или результат выполнения запроса (компонент Query)

VisibleButtons

Видимые командные кнопки

Компонент Edit -- поле редактирования.

Свойства компонента Edit (объект типа TEdit)

Свойство

Определяет (задает)

Name

Имя компонента. Используется в программе для доступа к компоненту и его свойствам, в том числе к тексту, который находится в поле редактирования

Text

Текст, который находится в поле ввода/редактирования

Left

Расстояние от левой границы компонента до левой границы формы

Top

Расстояние от верхней границы компонента до верхней границы формы

Height

Высоту поля

Width

Ширину поля

Font

Шрифт, используемый для отображения вводимого текста

ParentFont

Признак

Компонент Label - поле вывода текста

Свойства компонента Label

Свойство

Определяет (задает)

Name

Имя компонента. Используется в программе для доступа к свойствам компонента

Caption

Отображаемый текст

Font

Шрифт, используемый для отображения текста

ParentFont

Признак наследования шрифта родительского компонента

AutoSize

Признак того, что размер поля определяется его содержимым

Left

Расстояние от левой границы поля вывода до левой границы формы

Top

Расстояние от верхней границы поля вывода до верхней границы формы

Height

Высоту поля вывода

Width

Ширину поля вывода

Wordwrap

Признак того, что слова, которые не помещаются в текущей строке, автоматически переносятся на следующую строку (значение свойства AutoSize должно быть false)

Компонент Button - командная кнопка

Свойства компонента Button (командная кнопка)

Свойство

Описание

Name

Имя компонента. Используется в программе для доступа к компоненту и его свойствам

Caption

Текст на кнопке

Enabled

Признак доступности кнопки. Кнопка доступна, если значение свойства равно true, и недоступна, если значение свойства равно false

Left

Расстояние от левой границы кнопки до левой границы формы

Top

Расстояние от верхней границы кнопки до верхней границы формы

Height

Высота кнопки

Width

Ширина кнопки

Компонент СomboBox -- комбинированный список выбора

Стиль изображения компонента ComboBox определяется его свойством Style, которое может принимать следующие основные значения:

TOpenDialog и TSaveDialog

csDropDown

Выпадающий список со строками одинаковой высоты и с окном редактирования, позволяющим пользователю вводить или редактировать текст

csSimple

Развернутый список со строками одинаковой высоты и с окном редактирования, позволяющим пользователю вводить или редактировать текст. При таком стиле надо делать во время проектирования или программно высоту списка такой, чтобы в нем могло отобразиться требуемое число строк.

csDropDownList

Выпадающий список со строками одинаковой высоты, не содержащий окна редактирования.

csOwnerDrawFixed

Выпадающий список со строками одинаковой высоты, в которых могут отображаться изображения и текст.

csOwnerDrawVariable

Выпадающий список со строками разной высоты, в которых могут отображаться изображения и текст.

Диалоговые окошки File Open и File Save имеют несколько общих свойств. File Open в основном используется для выбора и открытия файлов, в то время как диалог File Save (так же используется как диалоговое окошко Save As) используется для получения от пользователя имени файла, чтобы сохранить файл.

6. Инструкция пользователя

Рабочее окно программы

Рабочее окно программы состоит из меню, панели поиска, сортировки, рабочей области (списка) и информационной панели.

Меню

Пункт меню «Файл» включает в себя следующие возможности:

«Создать» - дает возможность создать новую базу данных и автоматически сохраняет её.

«Открыть» - позволяет открыть сохраненную базу данных .

«Выход» - завершение работы с программой.

Пункт меню «О программе» включает в себя возможность узнать сведение о программе.

Рабочая область

Рабочая область представляет собой список из записей, панели навигации и функций сортировки и поиска по записям.

Панель навигации:

к первой записи

к предыдущей записи

к следующей записи

к последней записи

добавить запись

удалить запись

редактирование записи

сохранить запись

отменить

обновить

Сортировка

Чтобы произвести сортировку, нужно выбрать критерий по какому полю таблицы будет произведена сортировка и нажать кнопку «Сортировать».

Поиск

Чтобы произвести поиск, нужно выбрать критерий по какому полю таблицы будет произведен поиск и ввести нужное вам значение и нажать кнопку «Поиск».

Заключение

В результате выполнения курсовой работы были получены результаты: создан программный продукт на интегрированной среде программирования C++ Builder 6.

На современном этапе развития общества, когда происходит полная компьютеризация, время требует от программистов разработки новых программ, которые сумеют облегчить труд людей в разных сферах жизни. Современному человеку необходимы программы для реализации их возрастающих масштабов деятельности и данная программа им в этом поможет.

Предоставленная программа предназначена для работы с базой данных «Экскурсия». Свойства программы - быстрый ввод, обработка и поиск данных в данной базе. Программа включает в себя следующие процедуры: создание новой базы данных, просмотр существующей базы данных, редактирование записей, их добавление и удаление, поиск записей и сортировка записей по данному полю.

интерфейс программа редактирование база данных

Список используемой литературы

1. А. Я. Архангельский. « Программирование в C++ Builder 6». 2003

2. Н. Б. Культин. «Самоучитель C++ Builder». 2004

3. А. Д. Хомоненко, С. Е. Ададуров. «Работа с базами данных в C++ Builder». 2006

4. www.google.ru

Приложение

Unit1.cpp

//---------------------------------------------------------------------------

#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::N2Click(TObject *Sender)

{

Table1->Active = false;

if (SaveDialog1->Execute()) {

Table1->DatabaseName = ExtractFilePath(SaveDialog1->FileName);

Table1->TableType = ttParadox;

Table1->TableName = ExtractFileName(SaveDialog1->FileName);

Table1->FieldDefs->Clear();

TFieldDef *pNewDef = Table1->FieldDefs->AddFieldDef();

pNewDef->Name = "Наименование";

pNewDef->DataType = ftString;

pNewDef = Table1->FieldDefs->AddFieldDef();

pNewDef->Name = "Страна";

pNewDef->DataType = ftString;

Table1->FieldDefs->Add("Стоимость",ftCurrency,0,false);

pNewDef = Table1->FieldDefs->AddFieldDef();

pNewDef->Name = "Продолжительность";

pNewDef->DataType = ftString;

pNewDef = Table1->FieldDefs->AddFieldDef();

pNewDef->Name = "Транспорт";

pNewDef->DataType = ftString;

Table1->IndexDefs->Clear();

Table1->IndexDefs->Add("","Наименование",TIndexOptions()<<ixPrimary <<ixUnique);

Table1->IndexDefs->Add("indSt","Страна",TIndexOptions()<<ixCaseInsensitive);

Table1->IndexDefs->Add("indSum","Стоимость",TIndexOptions()<<ixDescending);

Table1->IndexDefs->Add("indPro","Продолжительность",TIndexOptions()<<ixDescending);

Table1->IndexDefs->Add("indTr","Транспорт",TIndexOptions()<<ixDescending);

Table1->CreateTable();

Table1->Active = true;

}

}

//---------------------------------------------------------------------------

void __fastcall TForm1::N3Click(TObject *Sender)

{

try{

if (OpenDialog1->Execute()) {

Table1->Active = false;

Table1->DatabaseName = ExtractFilePath(OpenDialog1->FileName);

Table1->TableType = ttParadox;

Table1->TableName = ExtractFileName(OpenDialog1->FileName);

Table1->Active = true;

}

}

catch (EDBEngineError &e){MessageBox(0, "Неправильный формат или испорченная база данных", "Error", MB_OK);}

}

//---------------------------------------------------------------------------

void __fastcall TForm1::N5Click(TObject *Sender)

{

Close();

}

//---------------------------------------------------------------------------

void __fastcall TForm1::N7Click(TObject *Sender)

{

MessageBox(0, "Программа реализует работу с базой данных \"Экскурсия\". Выполнил студент группы ДиКТ 21-09 Сергеев Евгений", "О программе", MB_OK);

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)

{

switch (ComboBox1->ItemIndex)

{case 0: Table1->IndexFieldNames="Наименование"; break;

case 1: Table1->IndexName="indSt"; break;

case 2: Table1->IndexName="indSum"; break;

case 3: Table1->IndexName="indPro"; break;

case 4: Table1->IndexName="indTr"; break;

}

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button2Click(TObject *Sender)

{

TLocateOptions SOptions;

Table1->Locate(ComboBox2->Text,Edit1->Text,SOptions<<loCaseInsensitive);

}

//---------------------------------------------------------------------------

Размещено на Allbest.ru


Подобные документы

  • Составление схемы концептуальной модели данных. Разработка структуры реляционной базы данных и интерфейса пользователя. Особенности главных этапов проектирования базы данных. Способы реализации запросов и отчетов. Специфика руководства пользователя.

    курсовая работа [186,9 K], добавлен 18.12.2010

  • Проектирование реляционной базы данных с помощью прикладного программного средства MS ACCESS. Описания особенностей использования запросов для извлечения, изменения и удаления информации из базы данных. Характеристика структуры интерфейса пользователя.

    курсовая работа [1,6 M], добавлен 19.11.2012

  • Особенности проектирования программы на языке С++ для обработки данных из таблиц базы данных. Основные функции программы, создание концептуальной модели базы данных и диаграммы классов, разработка интерфейса пользователя и запросов к базе данных.

    курсовая работа [2,1 M], добавлен 08.06.2012

  • Анализ предметной области. Проектирование и разработка базы данных и интерфейса в виде набора Web-страниц для отображения, создания, удаления и редактирования записей базы данных. Аппаратное и программное обеспечение системы. Алгоритм работы программы.

    курсовая работа [3,0 M], добавлен 12.01.2016

  • Обзор преимуществ и недостатков среды программирования Delphi, ее сравнение с аналогичными продуктами. Разработка инфологической, датологической, модели базы данных. Проектирование структуры программного обеспечения и понятного интерфейса базы данных.

    курсовая работа [964,8 K], добавлен 27.09.2014

  • Разработка простейшей базы данных с использованием приемов работы с Microsoft Access в среде программирования Delphi. Назначение базы данных, условия эксплуатации, выполнения и запуска программы "База данных районного отдела налоговой инспекции".

    курсовая работа [1,3 M], добавлен 14.12.2012

  • Рассмотрение инфологической и даталогической модели базы данных кинотеатров города. Разработка базы данных в программе MS Access. Описание структуры приложения и интерфейса пользователя. Изучение SQL-запросов на вывод информации о кинотеатре и о фильме.

    курсовая работа [1,1 M], добавлен 04.09.2014

  • Информационно-логическая модель предметной области по нотациям Ричарда Баркера. Даталогическая модель реляционной базы данных в виде диаграммы схемы отношений. Приложение интерфейса для базы данных на языке программирования С# в среде Visual Studio.

    курсовая работа [3,6 M], добавлен 23.12.2014

  • Проектирование системы управления базой данных "Почтовые отделения" для создания единой информационной системы: создание таблиц для хранения данных, ввод данных, разработка элементов базы, предназначенных для просмотра, редактирования и вывода информации.

    курсовая работа [1,4 M], добавлен 31.03.2010

  • Критерии классификации баз данных. Использование C++ - компилируемого, статически типизированного языка программирования общего назначения. Этапы разработки специализированного прикладного программного обеспечения - базы данных "Прохождение практики".

    курсовая работа [1,4 M], добавлен 11.12.2015

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.