Курсовая работа: Разработка базы данных "Магазин товаров"
Опыт
использования баз данных позволяет выделить общий набор их рабочих
характеристик:
• полнота -
чем полнее база данных, тем вероятнее, что она содержит нужную информацию
(однако, не должно быть избыточной информации);
• правильная
организация - чем лучше структурирована база данных, тем легче в ней найти
необходимые сведения;
• актуальность
- любая база данных может быть точной и полной, если она постоянно обновляется,
т.е. необходимо, чтобы база данных в каждый момент времени полностью
соответствовала состоянию отображаемого ею объекта;
• удобство
для использования - база данных должна быть проста и удобна в использовании и
иметь развитые методы доступа к любой части информации.
Соответственно
возможностям организации реляционных, иерархических и сетевых информационых
структур, существуют и аналогичные виды баз данных.
2.3 Основные типы баз
данных
1) Иерархические
2) Сетевые
3) Реляционные
Иерархические базы данных
Иерархические БД
применялись в начале 60-х годов. Они построены в виде обычного дерева. Данные
делятся на 2 категории: главные и подчинённые. Таким образом, один тип объекта
является главным, а остальные, находящиеся на более низких ступенях иерархии, -
подчинёнными.БД, организованные по такому принципу, удобно использовать в тех
случаячх, когда информамция упорядочена соответствующим образом.
Сетевые базы данных
Сетевые БД начали
применятся практически одновременно с иерархическими. В этих БД любой объект
может быть как главным, так и подчинённым.
В использовании довольно
сложно реализовать представление данных в таком виде, поэтому от этого типа
тоже отказались.
Реляционные базы данных
Именно реляционные БД
используются в повседневной жизни. (от англ. relation - отношение). Такой тип БД
представляется собой несколько взаимосвязанных таблиц прямоугольной формы. В
которых собственное есть поля, ключи, записи, аторибуты и прочее и прочее.
3. Действие программы
3.1 Структура программы
Программа состоит из 2
функций отвечающих за интерфейс программы и основной программы в которой
выполняются все действия с базой данных.
Функции отвечающие за
интерфейс программы предназначены для придания программе более приятного вида и
для упрощения работы с ней. Это функция вывода сообщения об ошибке ввода и
функция создания рамки в окне программы.
Функция вывода сообщения
об ошибке ввода предназначена для упрощения работы с программой. Вообще сама
«защита» от ошибки ввода защищает программу от совершения каких-либо ошибок,
связанных с вводом. Если пользователь случайно введет неправильное значение то
программа выдаст ему соответствующее сообщение и пользователь сможет исправить
свою ошибку.
Функция создания рамки в
окне программы предназначена для придания интерфейсу программы более
«товарного» вида. Пользователю будет приятнее работать в красивом окне чем в
простом черном окне.
Основная программа
выполняет действия над записями: ввод - вывод данных, изменение записей, поиск
записей, добавление записей к уже имеющимся.
3.2 Работа программы
Программа начинается с
ввода первоначальных данных.
При запуске появляется
окно в котором пользователю предлагается ввести нужные данные. Окно выглядит
так:
После ввода данных
пользователю предлагается продолжить ввод данных или же завершить ввод.
В случае неправильного
ввода программа выдает сообщение об ошибке:
Если пользователь вводит
символ 'n' то программа переходит к окну ввода данных, Если же пользователь
ввел символ 'q' то в окне появляется сообщение о завершении ввода.
Программа переходит к
следующему окну
Далее пользователю
предлагается выбрать дальнейшее действие.
При выборе вывода данных
на экране появляется окно с введенными данными
При выборе добавления
данных на экране появляется окно ввода данных. При выборе поиска на экране
появляется окно выбора критерия поиска:
Далее появляется окно в
котором предлагается ввести определенные данные для поиска. После выполнения
поиска при наличии данной записи она выводится на экран.
При выборе изменения
данных на экране появится окно в котором пользователю предлагается ввести
данные записи которую нужно изменить
Далее пользователю
предлагается ввести новые данные.
Далее выводится
сообщение об изменении записи.
При выборе выхода из
программы программа завершает свое выполнение и заврывается.
Заключение
Данная работа выполнена на языке высокого уровня
программирования в среде Borland С++, Первые версии языка программирования С++ (тогда он назывался
"Си с классами") были разработаны в начале 80-х годов Бьярном
Страуструпом, сотрудником знаменитой AT&T Bell Labs, где ранее были
разработаны такие шедевры программирования, как операционная система UNIX и
язык программирования Си. При написании и разработки
программного обеспечения использовались различные возможности С++.
В ходе выполнения курсовой работы была разработана база
данных группы студентов, с помощью которой можно добавить данные о студенте,
просмотреть их , совершить поиск по определенным критериям студента.
Также данные записываются в файл на жесткий диск, тем самым
мы сохраняем их. Уже поиск совершается в самом файле.
Данная курсовая работа позволила укрепить знания, которые
были получены в процессе учебы, и реализовать их в виде данной программы.
Список литературы
1. Е Зуев, А Кротов "Новые
возможности языка Си++", PC Magazine/Russian Edition, #7, 1994.
2. В.Шелест. Программирование. 2002.
3. Г. Шилдт «Самоучитель С++» - СПб.:БХВ-Петербург. 2001. — 670с.
4. Карпов Б., Баранов Т. «С++:
специальный справочник» - СПб.: Питер, 2001. — 480 с.:ил.
5. Культин Н. «С/С++ в задачах и
примерах» - СПб.:БХВ-Петербург, 2002. — 288 с.
6. А. Мешков, Ю. Тихомиров «Visual
C++ и MFC» - СПб.:БХВ-Петербург. 2002 — 1017с.
7. Теллес, М. BORLAND
C++ BUILDER: библиотека программиста .-- СПб : Питер, 1998 .-- 512с.
8. Архангельский, А.Я.
Язык C++ в C++Builder : справочное и методическое пособие / А.Я. Архангельский
.-- М. : Бином, 2008 .-- 942 с.
9. Роберт Седжвик, Фундаментальные
алгоритмы на С++,
Санкт-Петербург, ООО
"ДиаСофтЮП", 2002. Части 1-4 - 688 с., часть 5 - 496 с.
10. М. Эллис, Б. Строуструп. Справочное руководство по языку C++ с
комментариями: Пер. с англ. - Москва: Мир, 1992. 445с.
11. Стенли Б. Липпман. C++ для
начинающих: Пер. с англ. 2тт. - Москва: Унитех; Рязань: Гэлион, 1992,
304-345сс.
12. Бруно Бабэ. Просто и ясно о
Borland C++: Пер. с англ. - Москва: БИНОМ, 1994. 400с.
13. В.В. Подбельский. Язык C++:
Учебное пособие. - Москва: Финансы и статистика, 1995. 560с.
14. Ирэ Пол. Объектно-ориентированное
программирование с использованием C++: Пер. с англ. - Киев: НИИПФ ДиаСофт Лтд,
1995. 480с.
15. Т. Фейсон.
Объектно-ориентированное программирование на Borland C++ 4.5: Пер. с англ. -
Киев: Диалектика, 1996. 544с.
Приложение
Листинг программы
#include <clx.h>
#include <stdlib.h>
#include
<iostream.h>
#include
<conio.h>
#include
<stdio.h>
#include
<math.h>
void
ramka(),error();
void error()
{textcolor(4);
cprintf("Nepravil'nyi
vybor");
textcolor(15);}
void ramka ()
{int
xx1,yy1,xx2,yy2;
int xi;
xx1=2; yy1=1;
xx2=78; yy2=24;
for
(xi=xx1;xi<=xx2-1;xi++)
{textcolor(14);
gotoxy(xi,yy1);
cprintf("Н");
gotoxy(xi,yy2);
cprintf("Н");}
for
(xi=yy1;xi<=yy2;xi++)
{gotoxy(xx1,xi);
cprintf("є");
gotoxy(xx2,xi);
cprintf("є");}
gotoxy(xx1,yy1);
cprintf("Й");
gotoxy(xx2,yy1);
cprintf("»");
gotoxy(xx1,yy2);
cprintf("И");
gotoxy(xx2,yy2);
cprintf("ј");
textcolor(15);}
void main()
{const int
n=9999;
int m,i,j;
char l,k,x,y;
char
vybor[25],vtip[25],vproizv[25],vmodel[25];
struct detal
{int nomer; char naim[25]; char proizv[25]; char model[25];};
detal baza[n];
textmode(C80);
textbackground(1);
clrscr();
ramka();
gotoxy(25,5);
cprintf
("Vvedite dannye\n");
i=0;
metka2:
j=i;
gotoxy(25,7);
cprintf
("Tip produkta :");
cscanf
("%s",&baza[i].naim);
gotoxy(25,8);
cprintf
("Proizvoditel' :");
cscanf
("%s",&baza[i].proizv);
gotoxy(25,9);
cprintf
("Model' produkta :");
cscanf
("%s",&baza[i].model);
i++;
metka4:clrscr();
ramka();
gotoxy(8,9);
cprintf("Nazhmite
'n' dlya dobavleniya zapisi ili 'q' dlya zaversheniya vvoda\n");
gotoxy(33,10);
cscanf("%s",&x);
if (x=='n' ||
x=='q')
{if (x=='n')
{clrscr();
goto metka2;}
else
{gotoxy(27,11);
cprintf
("zapisi dobavleny\n");}}
else
{gotoxy (27,11);
error();
getch();
getch();
goto metka4;}
getch();
getch();
metka1:clrscr();
ramka();
gotoxy(25,5);
cprintf("Vyberite
deistvie");
gotoxy(25,7);
cprintf("1-Vyvesti
spisok na ekran");
gotoxy(25,8);
cprintf("2-Dobavit'
dannye v spisok");
gotoxy(25,9);
cprintf("3-Vypolnit'
poisk");
gotoxy(25,10);
Страницы: 1, 2, 3, 4 |