- •Введение
- •Общая часть
- •1.1. Системный анализ предметной области
- •1.2 Формирование атрибутов исходного отношения
- •. Логическое проектирование бд (er - анализ)
- •Формирование выходных данных
- •Формирование входных данных
- •1.7. Выбор среды разработки
- •Техническое задание на курсовой проект Введение
- •1.8.2. Основание для разработки
- •1.8.3. Назначение
- •1.8.4 Требования к программе или программному изделию
- •1.8.5. Требования к программной документации
- •1.8.6 Этапы разработки
- •Специальная часть
- •2.1. Разработка таблиц базы данных
- •2.2. Структура прикладной программы
- •2.3. Создание интерфейса приложения
- •2.4. Проектирование формы «Виртуальный магазин по продаже мебели»
- •. Проектирование формы «поставщики»
- •. Проектирование формы «Клиенты»
- •Проектирование формы «Мебель»
- •Проектирование формы «Тип оплаты»
- •Проектирование формы «Заказ»
- •3. Эксплуатационная часть
- •3.1. Требования к аппаратно – программному обеспечению
- •Инструкция по установке пп
- •Инструкция по тестированию пп
- •3.4. Инструкция по эксплуатации пп
- •Заключение
- •Список источников
- •Приложения
1.2 Формирование атрибутов исходного отношения
Код;
Фамилия;
Имя;
Отчество;
Название;
Номер счета;
Дата заказа;
Дата исполнения;
Оплата.
. Логическое проектирование бд (er - анализ)
ВЫДЕЛЕНИЕ СУЩНОСТЕЙ И СВЯЗЕЙ МЕЖДУ НИМИ
Исходя из системного анализа и атрибутов исходного отношения, можно выделить следующие сущности с ключевыми атрибутами:
1) Поставщик (код);
Клиенты (код);
Мебель (код);
Тип оплаты (код);
Заказ (код).
Выделенные сущности находятся в следующих связях:
Поставщик поставляет Мебель;
Клиент делает Заказ;
Клиент осуществляет Тип оплаты;
Заказ содержит мебель.
ПОСТРОЕНИЕ ДИАГРАММЫ ER-ТИПА С УЧЕТОМ ВСЕХ СУЩНОСТЕЙ И СВЯЗЕЙ МЕЖДУ НИМИ
Рисунок 1 - Связь «Поставщик – Мебель»
Рисунок 2 - Связь «Клиент – Заказ»
Рисунок 3 - Связь «Клиент – Тип оплаты »
Рисунок 4 - Связь «Заказ – Мебель»
Схема 1 - Общие связи таблиц
ФОРМИРОВАНИЕ НАБОРА ПРЕДВАРИТЕЛЬНЫХ ОТНОШЕНИЙ С УКАЗАНИЕМ ПРЕДПОЛАГАЕМОГО ПЕРВИЧНОГО КЛЮЧА
Таблица 1 - Отношение «Поставщик - мебель»
Отношение |
Мебель |
|
Первичный ключ |
Код мебели |
|
Внешний ключ |
Код поставщика |
Д |
Отношение |
Поставщик |
|
Первичный ключ |
Код поставщика |
|
Таблица 2 - Отношение «Клиент - заказ»
Отношение |
Заказ |
|
Первичный ключ |
Код заказа |
|
Внешний ключ |
Код клиента |
Д обавляем |
Отношение |
Клиент |
|
Первичный ключ |
Код клиента |
|
Таблица 3 - Отношение «Клиент – Тип оплаты»
Отношение |
Тип оплаты |
|
Первичный ключ |
Код клиент |
|
Внешний ключ |
Код тип оплаты |
Д обавляем |
Отношение |
Тип оплаты |
|
Первичный ключ |
Код тип оплаты |
|
Таблица 4 - Отношение «Заказ - мебель»
Отношение |
Заказ |
|
Первичный ключ |
Код заказа |
|
Внешний ключ |
Код мебели |
Д обавляем |
Отношение |
Мебель |
|
Первичный ключ |
Код мебели |
|
Схема 2 - Структурная схема базы данных
Таблица 5 - «Атрибуты таблицы поставщик»
Отношение |
Поставщик |
|
Атрибуты |
Тип |
Описание |
Код |
Числовой, ключ |
Номер постав |
Наименование |
Строковый |
Наименование постав |
ИНН |
Числовой |
ИНН постав |
Адрес |
Строковый |
Адрес постав |
Телефон |
Числовой |
Телефон постав |
Руководитель |
Строковый |
Руководитель постав |
Таблица 6 - «Атрибуты таблицы клиенты»
Отношение |
Клиенты |
|
Атрибуты |
Тип |
Описание |
Код |
Числовой, ключ |
Номер кл |
Фамилия |
Строковый |
Фамилия кл |
Имя |
Строковый |
Имя кл |
Отчество |
Строковый |
Отчество кл |
Телефон |
Числовой |
Телефон кл |
Адрес |
Строковый |
Адрес кл |
Таблица 7 - «Атрибуты таблицы мебель»
Отношение |
Мебель |
|
Атрибуты |
Тип |
Описание |
Код |
Числовой, ключ |
Номер мебели |
Название |
Строковый |
Название мебели |
Срок службы |
Строковый |
Срок службы мебели |
Цвет |
Строковый |
Цвет мебели |
Материал |
Строковый |
Материал мебели |
Цена |
Числовой |
Цена мебели |
Таблица 8 - «Атрибуты таблицы тип оплаты»
Отношение |
Тип оплаты |
|
Атрибуты |
Тип |
Описание |
Код |
Числовой, ключ |
Номер тп |
Название банка |
Строковый |
Название банка тп |
Номер счета |
Числовой |
Номер счета тп |
Сумма |
Числовой |
Сумма тп |
Таблица 9 - «Атрибуты таблицы заказ»
Отношение |
Заказ |
|
Атрибуты |
Тип |
Описание |
Код |
Числовой, ключ |
Номер зак |
Дата заказа |
Дата |
Дата заказа зак |
Дата исполнения |
Дата |
Дата исполнения зак |
Название заказа |
Строковый |
Название заказа зак |
Оплата |
Числовой |
Оплата зак |
. SQL – скрипт генерации таблиц БД
Create table Klient (
Klient_id Int UNSIGNED ZEROFILL BINARY NOT NULL AUTO_INCREMENT,
Fam Char(20) UNSIGNED ZEROFILL BINARY AUTO_INCREMENT,
Im Char(20) UNSIGNED ZEROFILL BINARY AUTO_INCREMENT,
Otch Char(20) UNSIGNED ZEROFILL BINARY AUTO_INCREMENT,
Adres_k Char(20) UNSIGNED ZEROFILL BINARY AUTO_INCREMENT,
Tel_k Int UNSIGNED ZEROFILL BINARY AUTO_INCREMENT,
Index AI_Klient_id (Klient_id),
Index AI_Fam (Fam),
Index AI_Im (Im),
Index AI_Otch (Otch),
Index AI_Adres_k (Adres_k),
Index AI_Tel_k (Tel_k),
Primary Key (Klient_id)) TYPE = MyISAM
ROW_FORMAT = Default;
Create table Meb (
Meb_id Int UNSIGNED ZEROFILL BINARY NOT NULL AUTO_INCREMENT,
Name_m Char(20) UNSIGNED ZEROFILL BINARY AUTO_INCREMENT,
Srok Char(20) UNSIGNED ZEROFILL BINARY AUTO_INCREMENT,
Cvet Char(20) UNSIGNED ZEROFILL BINARY AUTO_INCREMENT,
Ves Char(20) UNSIGNED ZEROFILL BINARY AUTO_INCREMENT,
Cena Int UNSIGNED ZEROFILL BINARY AUTO_INCREMENT,
Material Char(20) UNSIGNED ZEROFILL BINARY AUTO_INCREMENT,
Postav_id Int UNSIGNED ZEROFILL BINARY NOT NULL,
Zakaz_id Int UNSIGNED ZEROFILL BINARY NOT NULL,
Klient_id Int UNSIGNED ZEROFILL BINARY NOT NULL,
Index AI_Meb_id (Meb_id),
Index AI_Name_m (Name_m),
Index AI_Srok (Srok),
Index AI_Cvet (Cvet),
Index AI_Ves (Ves),
Index AI_Cena (Cena),
Index AI_Material (Material),
Primary Key (Meb_id,Postav_id,Zakaz_id,Klient_id)) TYPE = MyISAM
ROW_FORMAT = Default;
Create table Postav (
Postav_id Int UNSIGNED ZEROFILL BINARY NOT NULL AUTO_INCREMENT,
Name_p Char(20) UNSIGNED ZEROFILL BINARY AUTO_INCREMENT,
Inn Int UNSIGNED ZEROFILL BINARY AUTO_INCREMENT,
Adres_p Char(20) UNSIGNED ZEROFILL BINARY AUTO_INCREMENT,
Tel_p Int UNSIGNED ZEROFILL BINARY AUTO_INCREMENT,
Ruck Char(20) UNSIGNED ZEROFILL BINARY AUTO_INCREMENT,
Index AI_Postav_id (Postav_id),
Index AI_Name_p (Name_p),
Index AI_Inn (Inn),
Index AI_Adres_p (Adres_p),
Index AI_Tel_p (Tel_p),
Index AI_Ruck (Ruck),
Primary Key (Postav_id)) TYPE = MyISAM
ROW_FORMAT = Default;
Create table Tip_oplata (
Oplata_id Int UNSIGNED ZEROFILL BINARY NOT NULL AUTO_INCREMENT,
Name_b Char(20) UNSIGNED ZEROFILL BINARY AUTO_INCREMENT,
Nomer_s Int UNSIGNED ZEROFILL BINARY AUTO_INCREMENT,
summa Int UNSIGNED ZEROFILL BINARY AUTO_INCREMENT,
Klient_id Int UNSIGNED ZEROFILL BINARY NOT NULL,
Index AI_Oplata_id (Oplata_id),
Index AI_Name_b (Name_b),
Index AI_Nomer_s (Nomer_s),
Index AI_summa (summa),
Primary Key (Oplata_id,Klient_id)) TYPE = MyISAM
ROW_FORMAT = Default;
Create table Zakaz (
Zakaz_id Int UNSIGNED ZEROFILL BINARY NOT NULL AUTO_INCREMENT,
Data_zakaza Date UNSIGNED ZEROFILL BINARY AUTO_INCREMENT,
Data_ispoln Date UNSIGNED ZEROFILL BINARY AUTO_INCREMENT,
Name_zakaz Char(20) UNSIGNED ZEROFILL BINARY AUTO_INCREMENT,
Oplata Char(20) UNSIGNED ZEROFILL BINARY AUTO_INCREMENT,
Klient_id Int UNSIGNED ZEROFILL BINARY NOT NULL,
Index AI_Zakaz_id (Zakaz_id),
Index AI_Data_zakaza (Data_zakaza),
Index AI_Data_ispoln (Data_ispoln),
Index AI_Name_zakaz (Name_zakaz),
Index AI_Oplata (Oplata),
Primary Key (Zakaz_id,Klient_id)) TYPE = MyISAM
ROW_FORMAT = Default;
Alter table Zakaz add Index IX_Relationship3 (Klient_id);
Alter table Zakaz add Foreign Key (Klient_id) references Klient (Klient_id) on delete restrict on update restrict;
Alter table Tip_oplata add Index IX_Relationship4 (Klient_id);
Alter table Tip_oplata add Foreign Key (Klient_id) references Klient (Klient_id) on delete restrict on update restrict;
Alter table Meb add Index IX_Relationship1 (Postav_id);
Alter table Meb add Foreign Key (Postav_id) references Postav (Postav_id) on delete restrict on update restrict;
Alter table Meb add Index IX_Relationship2 (Zakaz_id,Klient_id);
Alter table Meb add Foreign Key (Zakaz_id,Klient_id) references Zakaz (Zakaz_id,Klient_id) on delete restrict on update restrict;

обавляем