Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовик «разработка Базы Данных Для Ресторана» По Базам Данных (Марков А. А.).doc
Скачиваний:
62
Добавлен:
07.10.2014
Размер:
666.11 Кб
Скачать

Министерство образования и науки Российской Федерации

Московский государственный университет печати

Кафедра информационных систем

Курсовая работа

По дисциплине «Базы и банки данных»

«Разработка базы данных для ресторана»

Выполнил:

Подпись____________________

Руководитель: Подпись____________________

Оглавление

Оглавление 2

Описание базы данных 3

ER – модель 3

Модель ANSI-SPARC 5

Описание структуры таблиц 8

Функциональные зависимости 10

(пояснения по выбору первичных ключей) 10

Начальное заполнение таблиц 11

Хранимые процедуры и функции. 26

33

Рис. 9. Блок-схема функции sum_order. 33

Триггеры 35

Литература 38

Приложение №1. ER – Модель базы данных 39

39

Приложение №2. Исходный код создания таблиц 40

Приложение №3. Исходный код занесения данных 42

load data local infile 'D:/xampp/mysql/bin/dishes.txt' into table dishes; 42

load data local infile 'D:/xampp/mysql/bin/orders.txt' into table orders; 42

load data local infile 'D:/xampp/mysql/bin/orders_dishes.txt' into table order_dishes; 42

load data local infile 'D:/xampp/mysql/bin/tables.txt' into table tables; 42

load data local infile 'D:/xampp/mysql/bin/waiters.txt' into table waiters; 42

load data local infile 'D:/xampp/mysql/bin/waiter_tables.txt' into table waiter_tables; 42

load data local infile 'D:/xampp/mysql/bin/firm.txt' into table firm; 42

Описание базы данных

База данных разработана для автоматизации работы с данными ресторана. Она содержит информацию о блюдах, столиках, заказах и персонале. База данных позволяет просматривать нужную информацию (меню, количество заказов за день, среднюю цена блюд по определенному виду, информацию об официанте, обслуживающего данный столик и др.), осуществлять заказы блюд и отменять их, добавлять и удалять данные о блюдах, считать сумму заказа с учетом цены за резервирование столика и 10% скидки.

Er – модель

База данных разработана с использованием модели «сущность – связь» (entity – relationship model, «ER – модель»). ER – модель является средством абстрактного представления структур, т.е. дает возможность описать информацию, которая должна быть представлена в базе данных, и указать взаимосвязь между элементами информации.

ER-модель является графической, поэтому схема базы данных представлена в виде ER-диаграммы (ERD, entity-relationship diagram — «диаграмма сущностей и связей»). ER-диаграмма состоит из элементов трех основных типов: множеств сущностей, атрибутов, связей. Множество сущностей — набор однородных абстрактных объектов определенного вида. Атрибуты — свойства сущностей. Связи — соединения между двумя или большим числом множеств сущностей.

БД содержит 5 сущностей.

Сущность «dishes» — меню ресторана. Имеет атрибуты: «ID_dish» - номер блюда, «name» - название, «descr» - описание, «price» - цена, «kind» - вид блюда. Связь «order_dishes» между сущностью «dishes» и сущностью «orders» типа «многие-ко-многим», т.е. несколько блюд могут принадлежать одному заказу и несколько заказов могут включать одинаковое блюдо, имеет атрибут «quantity» - количество заказанных блюд, определенного номера.

Сущность «firm» включает в себя фирменные блюда, имеет 1 атрибут «ID_firm» - номер блюда, являющегося фирменным.

Сущность «orders» включает в себя информацию о заказах. Имеет атрибуты: «ID_order» - номер заказа, «date» - дата, «ID_table» - номер столика, «reserve» - был ли зарезервирован столик, «discount» - есть ли 10%-ая скидка.

Сущность «tables» содержит информацию о столиках. Имеет атрибуты: «ID_table» - номер столика, «type» - тип столика (ord-обычный, vip), «smoking» - курящая зона либо нет, «busy» - занят столик или нет. Имеет связь «waiter_tables» типа «многие-к-одному» с сущностью «waiters», т. к. один официант обслуживает несколько столиков.

Сущность «waiters» содержит данные об официантах. Имеет атрибуты: «ID_waiter» - ID официанта, «name» - имя, «surname» - фамилия, «address» - адрес, «tel» - телефон.

ER – Модель базы данных представлена в приложении №1.