Розробка бази даних "Тренажерний зал"
Побудова концептуальної моделі бази даних. Основні сутності і їх атрибути. Основні сутності та їх атрибути. Опис метаданих, що зберігаються на сервері. Код створення таблиць бази даних "Тренажерний зал". Вибір відвідувачів інструктора, створення триггеру.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | украинский |
Дата добавления | 25.02.2020 |
Размер файла | 1,5 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru//
АНОТАЦІЯ
У даному курсовому проекті представлено розробку бази даних для тренажерного залу.
Курсовий проект виконано на 36 сторінках машинописного тексту і містить: 10 рисунків, 8 таблиць, список використаних джерел із 2 найменувань.
Робота викладена українською мовою.
SUMMARY
This course project presents the development of a database for the gym.
The course project is executed in 36 pages of typewritten text and contains: 10 figures, 8 tables, list of used sources with 2 names.
The work is presented in Ukrainian.
ВСТУП
Інформаційні технології стрімко увійшли в наше життя, покращилася якість інформації, її зберігання і передача, тому все більше підприємств і організацій стало комп'ютеризувати свою діяльність, що сприяє скороченню кількості часу, витраченого на виконання тієї чи іншої операції, а відповідно і скорочення витрат. Не є винятком тренажерний зал.
БД тренажерного зала є актуальною в наш час. В цій БД основним завданням є автоматизувати та поліпшити роботу для адміністратора, або працівника(користувача) тренажерного залу, що надасть доступ до запису клієнтів, інструкторів та послуг.
Мета роботи - розробити базу даних тренажерного залу. Реалізувати додавання нових даних, надання довідкової інформації. Мета розробки - автоматизація процесу обліку та аналізу роботи тренажерного залу.
АНАЛІЗ ПРЕДМЕТНОЇ ОБЛАСТІ І ПОСТАНОВКА ЗАДАЧІ
Аналіз предметної області
Тренажерний зал - це універсальне місце для тренувань, в якому, при бажанні можна розвивати не тільки силу, але і витривалість, гнучкість, координацію рухів, худнути, проходити реабілітацію і домагатися того, заради чого люди взагалі займаються спортом.
Результат буде цілком залежати від програми тренувань, її темпу, обраної навантаження і використовуваного обладнання.
У базі даних тренажерного залу повинна міститися інформація про його відвідувачів і інструкторів, а також про послуги, що надаються. Існує адміністратор, який займається заповненням загальної інформації про відвідувачів та тренерів, розписанням та послуги та має звіти з потрібною інформацією для себе та інструкторів. Наприклад: звіти по дії VIP абонементів клієнтів, або звіти по зайнятості інструкторів.
Відвідувач при реєстрації повиннен указати всі дані, які потребує клуб. Відвідувач може займатися як індивідуально так і з тренером. Він може придбати VIP абонемент, що ключає в себе заняття з тренером та звичайний абонемент на відвідування. Це надає адміністратор при бажанні клієнта.
Існують три вида квитків:
Звичайний абонемент. Відвідувач може придбати лише на термін дії від одноразового до річного.
Абонемент з послугою тренера, в ньому можно займатися лише с тренером.
Третій - це VIP абонемент. Всі карти для обліку їх кількості належать до нумерації.
Кожен абонемент має індивідуальний номер, а також відомості про його ціну і кількість відвідувань. Для кожного відвідувача ведеться облік про його відвідуваності, яка заноситься в абонемент і містить відомості про дату і час. Будь-який клієнт займається в групах, кожна з яких характеризується індивідуальним номером і назвою.
Заняття в групах проводять інструктори, кожен з яких містить такі відомості: індивідуальний номер; ПІБ інструктора; стаж; спеціалізація; освіта; кваліфікація, звання та нагороди.
Кожна група проводить свої заняття в спортивних залах. Кожен зал містить такі відомості: назва залу; інвентар; місткість.
Клієнт може не мати інструктора і займатися індивідуально. Інструктор же в будь-якому випадку буде мати хоча б одного клієнта чи більше, інструктор має конкретний час занять с клієнтами та робочі дні. Кожен інструктор може мати певне звання (кмс, мс, мсмк).
Аналіз готових рішень
Перед розробкою бази даних тренажерного залу дослідив вже існуючи програми, які вирішують подібні задачі. Розглянув наступні програми:
Fitness Pro - це програма, яку можно використовувати як в одному клубі, так и у мережі клубів. За допомогою синхронізації даних можна бачити всіх клієнтів, внесених в одному клубі - у всіх закладах вашої мережі, як і їх клубні карти і абонементи. Клієнт зможе відвідувати всю мережу клубів, при цьому інформація про його абонемент буде у всіх клубах: назва карти, на що поширюється, кількість залишилися відвідувань по карті і т.д.
Програма Fitness Pro призначена для автоматизації:
Спортивного клуба і зала;
Фітнес центра и фітнес клуба;
Тренажерних залів та дитячих гуртків;
Танцювальних студій та школ;
Для тренерів, які проводять персональні заняття;;
Розвиваючих центрів для дітей.
Servitum - програма Servitum має інтуїтивно зрозумілий інтерфейс. Розроблено спеціально для автоматизації фітнес клубів, тренажерних залів, танцювальних клубів. Також за допомогою Servitum можна автоматизувати роботу спортивного центру або йога-студії.
Servitum дозволяє контролювати абонементи, групи, відвідування та вести облік грошових коштів, дозволяє планувати групові заняття, планувати відвідування клієнтів. Servitum дозволяє вести журнал відвідувань, платежів, наданих послуг та історію по кожному клієнту.
«Універсальна Система Обліку». Програмою можуть користуватися: спортивний клуб, центр або зал, фітнес-клуб або центр, тренажерний зал і качалка, спортивно-розважальний клуб, спортивна школа, секція або організація, спортивний комплекс або об'єкт. Програма дозволяє працювати з великою кількістю даних, та здійснювати контроль в тренажерному залі. Для зручності передбачено можливість працювати з системою абонементів, і для простої роботи з ними у програмі існує модуль в якому можна відстежувати і редагувати роботу кожного абонемента (початок, дата закінчення, заморозка, вартість і кількість відвідувань). Щоб не вводити кожен раз вартість абонемента, передбачені настройки прайс-листа послуг і навіть передбачається можливість вказувати будь-які акції або знижки.
Програма дозволяє здійснювати дії різним користувачам з різним доступом. У програми є захист логіна паролем. В управлінні тренажерним залом можна створити необмежену кількість видів курсів. Програма реєстрації тренажерного залу дозволяє за кожним курсом закріпити безліч видів абонементів. За кожного клієнта можна легко переглянути історію куплених абонементів. Система обліку тренажерного залу дозволяє заповнити розклад занять на рік вперед. Програмне забезпечення тренажерного залу допомагає за розкладом планувати зайнятість приміщень. Програма дає можливість в розкладі подивитися всю історію занять, які були і будуть. Для кожного приміщення можна задати свої години роботи. Софт тренажерного залу позначає кольором боржників.
Постанова задачі
Виходячи з аналізу предметної області, необхідно розробити БД тренажерного залу.
В результаті БД повинна забезпечувати вирішення наступних основних задач:
формування включених послуг відвідувача;
формування розкладу роботи інструкторів;
формування списку тренерів які мають 1 місце нагороди;
формування списку відвідувачів в яких налічується абонимент;
вибір відвідувачів за групою;
вибір відвідувачів інструктора;
підрахунок клієнтів у групі.
Вхідні дані:
інформація про відвідувачів;
інформація про інструкторів;
інформація про групи;
інформація про абонементи;
інформація про послуги;
інформація про зал;
інформація про відвідування.
Вихідні дані:
список відвідувачів;
список інструкторів;
розкладів роботи інструкторів;
Список включених послуг для відвідувача;
розкладу роботи інструкторів;
список тренерів які мають 1 місце нагороди;
вибір відвідувачів за групою;
список відвідувачів в яких налічується абонимент;
підрахунок клієнтів у групі.
Побудова концептуальної моделі
На основі проведеного аналізу предметної області можна виділити наступні сутності:
«Відвідувач»;
«Інструктор»;
«Група»;
«Абонемент»;
«Зал»;
«Розклад»;
«Відвідування».
«Послуга»
Сутність «Відвідувач» характеризується атрибутами «ID користувача», «ПІБ відвідувача», «Паспортні дані», «Дата народження», «Адреса», «Телефон». Ключем цієї сутності є атрибут «ID користувача», так як кожен відвідувач має свій індивідуальний номер.
Сутність «Інструктор» характеризується атрибутами «ID інструктора», «ПІБ інструктора», «Стаж», «Звання», «Нагороди». Ключем цієї сутності є атрибут «ID інструктора», так як кожен інструктор має свій індивідуальний номер.
Сутність «Група» характеризується атрибутами «ID групи», «Назва групи». Ключем цієї сутності є атрибут «ID групи».
Сутність «Абонемент» характеризується атрибутами «№ абонемента», «Кількість відвідувань», «Дата видачі», «Ціна». Ключем цієї сутності є атрибут «№ абонемента», так як у кожного абонемента може бути тільки один номер.
Сутність «Зал» характеризується атрибутами «ID залу», «Назва залу», «Інвентар» і «Місткість». Ключем цієї сутності є атрибут «ID залу».
Сутність «Розклад» характеризується атрибутами, «Шифр розкладу», «День тижня» і «Час заняття». Ключем цієї сутності є атрибут «Шифр розкладу».
Сутність «Послуга» характеризується атрибутами «ID послуги», «Назва послуги», «Вартість послуги».
Сутність «Відвідування» характеризується атрибутами «Код відвідування», «Дата відвідування» і «Час». Ключем цієї сутності є атрибут «Код відвідування».
Основні сутності та їх атрибути наведені у таблиці(1).
Таблиця 1 - Основні сутності та їх атрибути
Сутність |
Атрибути |
|
Відвідувач |
ID користувача ПІБ користувача Паспортні дані Дата народження Адресса Телефон |
|
Інструктор |
ID інструктора ПІБ інструктора Телефон інструктора Стаж Звання Нагороди |
|
Група |
ID групи Назва групи |
|
Абонемент |
ID абонемента Кількість відвідувань Дата видачі Ціна Вид терміну дії |
|
Зал |
ID залу Назва залу Інвентар Місткість |
|
Розклад |
ID розкладу День тижня Час заняття |
|
Відвідування |
ID відвідування Час Дата відвідування |
|
Послуга |
ID послуги Назва послуги Вартість послуги |
Аналіз характеру логічного взаємодії об'єктів предметної області дозволяє зробити висновок про те, що, між сутностями «Відвідувач» і «Абонемент» існує зв'язок «має» ступеня 1: М. Кожен відвідувач може мати декілька абонементів.
Сутності «Інструктор» і «Група» об'єднані зв'язком «тренує». Ступінь зв'язку з цим - 1: М, так як інструктор може тренувати кілька груп.
Сутності «Відвідувачі» і «Група» об'єднані зв'язком «відвідують» ступеня М:1. Одну групу можуть відвідувати кілька відвідувачів.
Сутності «Група» і «Зал» об'єднані зв'язком «займаються» ступеня М:1. В одному залі можуть займатися кілька груп.
Сутності «Група» і «Розклад» об'єднані зв'язком «займаються» ступеня 1: М.
Сутності «Відвідування» та «Абонемент» об'єднані зв'язком «заноситься» ступеня М:1.
Сутності «Абонемент» і «Послуга» об'єднані зв'язком «використовують»
Взаємозв'язки між сутностями наведні у таблиці(2)
Таблиця 2 - Взаємозв'язки між сутностями
Сутності |
Тип зв'язку |
Зміст зв'язку |
|
Відвідувач і Абонемент |
1:М |
Кожен відвідувач може мати декілька абонементів. |
|
Інструктор і група |
1:М |
Інструктор може тренувати кілька груп. |
|
Відвідувачі і група |
М:1 |
Одну групу можуть відвідувати кілька відвідувачів. |
|
Група і зал |
М:1 |
В одному залі можуть займатися кілька груп. |
|
Група і розклад |
1:М |
Одна група може займатися по різним розкладам |
|
Відвідування і абонемент |
М:1 |
Багато відвідувань заносяться до одного абонемента |
|
Абонемент і послуга |
М:1 |
Багато абонементів можуть використовувати одну послугу |
Рисунок 1- Концептуальна модель спорт клубу
Побудова логічної моделі
Логічна модель представлена на рисунку 2.
Рисунок 2 - Логічна модель спротивного клубу
Розробка фізичної моделі бази даних
Фізична модель буде створена у СУБД MySQL
На рисунку 3 представлена фізична модель БД.
Рисунок 3 - Фізична модель спортивного клубу
Таблиця 1 - Структура таблиці Instruktor
Ідентифікатор поля |
Ознака ключа |
Тип даних |
Обмеження |
|
idInstruktor |
PK |
INT(11) |
NOT NULL |
|
PIB_instruktora |
VARCHAR(45) |
NOT NULL |
||
Telefon_instr |
VARCHAR(45) |
NOT NULL |
||
Stazg |
VARCHAR(45) |
NOT NULL |
||
Zvannj |
VARCHAR(45) |
NOT NULL |
||
nagorodu |
VARCHAR(45 ) |
Таблиця 2 - Структура таблиці Vidviduvach
Ідентифікатор поля |
Ознака ключа |
Тип даних |
Обмеження |
|
idvidviduvach |
PK |
INT(11) |
NOT NULL |
|
PIB_vidviduvacha |
VARCHAR(45) |
NOT NULL |
||
Pasport |
VARCHAR(45) |
NOT NULL |
||
Data_narodzhennya |
DATE |
NOT NULL |
||
Adresa |
VARCHAR(45) |
NOT NULL |
||
Telefon |
VARCHAR(45 ) |
NOT NULL |
||
Grtpa_idGrypa |
FK |
INT(11) |
NOT NULL |
Таблиця 3 - Структура таблиці Grypa
Ідентифікатор поля |
Ознака ключа |
Тип даних |
Обмеження |
|
idGrypa |
PK |
INT(11) |
NOT NULL |
|
Nazva_grypu |
VARCHAR(45) |
NOT NULL |
||
Instruktor_idInstruktor |
FK |
INT(11) |
NOT NULL |
|
Zal_idZal |
FK |
INT(11) |
NOT NULL |
Таблиця 4 - Структура таблиці Rozklad
Ідентифікатор поля |
Ознака ключа |
Тип даних |
Обмеження |
|
IdRozklad |
PK |
INT(11) |
NOT NULL |
|
Den_tyzhhnya |
VARCHAR(45) |
NOT NULL |
||
Chas_zanyattaya |
VARCHAR(45) |
NOT NULL |
||
Grypa_idGrypa |
FK |
INT(11) |
NOT NULL |
Таблиця 5 - Структура таблиці Zal
Ідентифікатор поля |
Ознака ключа |
Тип даних |
Обмеження |
|
Idzal |
PK |
INT(11) |
NOT NULL |
|
Nazva_zalu |
VARCHAR(45) |
NOT NULL |
||
Inventar |
VARCHAR(45) |
NOT NULL |
||
Mistkist |
VARCHAR(45) |
NOT NULL |
Таблиця 6 - Структура таблиці Poslyga
Ідентифікатор поля |
Ознака ключа |
Тип даних |
Обмеження |
|
Idposlyga |
PK |
INT(11) |
NOT NULL |
|
Nazva_poslugu |
VARCHAR(45) |
NOT NULL |
||
Vartist_poslugu |
INT(11) |
NOT NULL |
Таблиця 7 - Структура таблиці Vidviduvannya
Ідентифікатор поля |
Ознака ключа |
Тип даних |
Обмеження |
|
Idvidviduvannya |
PK |
INT(11) |
NOT NULL |
|
Data_vidviduvannya |
DATE |
NOT NULL |
||
Chas |
VARCHAR(45) |
NOT NULL |
||
Abonement_idAbonement |
FK |
INT(11) |
NOT NULL |
Таблиця 8 - Структура таблиці Abonement
Ідентифікатор поля |
Ознака ключа |
Тип даних |
Обмеження |
|
Idabonement |
PK |
INT(11) |
NOT NULL |
|
Data_vudachi |
DATE |
NOT NULL |
||
Kilkist_vidviduvan |
VARCHAR(45) |
NOT NULL |
||
Vud_terminy_dii |
VARCHAR(45) |
NOT NULL |
||
Cina |
INT(11) |
NOT NULL |
||
Poslyga_idposlyga |
INT(11) |
NOT NULL |
||
Vidviduvach_idvidviduvach |
INT(11) |
NOT NULL |
Аналіз результатів розробки
Створено перегляд абонемента у відвідувачів. Представлено на рисунку 4
Рисунок 4 - Абонемент у відвідувачів
Створено перегляд розкладу роботи тренерів. Представлено на рисунку 5.
Рисунок 5 - Розклад роботи тренерів
Створено перегляд де показано, які тренера мають 1 місце. Представлено на рисунку 6.
Рисунок 6 - Тренера, які мають 1 місце
Створено перегляд де показується за що сплачує відвідувач. Представлено на рисунку 7.
Рисунок 7 - За що слпачує відвідувач
Створено збережену процедуру для визачення відвідувачів за групою. Збережену процедуру зображено на рисунку 8.
Рисунок 8 - Визачення відвідувачів за групою
Створено збережену процедуру для вибору відвідувачів інструктора. Збережену процедуру зображено на рисунку 9.
Рисунок 9 - Вибір відвідувачів інструктора
Створено триггер «Кількість клієтнів (amount clients)», який підраховує кількість клієнтів в кожній групі. При додаванні клієнта в базу визначаємо в якій він групі, в таблиці «Група» записується скількі клієтнів в кожній групі.
Триггер зображено на рисунку 10.
база дані таблиця
Рисунок 10 - Кількість клієнтів
Опис метаданих, що зберігаються на сервері
Для роботи з базою даних використано СУБД MySQL
Лістинг 1 - код створення таблиць БД.
CREATE SCHEMA IF NOT EXISTS `sport_club` DEFAULT CHARACTER SET utf8 ;
USE `sport_club` ;
-- -----------------------------------------------------
-- Table `sport_club`.`instruktor`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `sport_club`.`instruktor` (
`idInstruktor` INT(11) NOT NULL AUTO_INCREMENT,
`PIB_instruktora` VARCHAR(45)NOT NULL,
`telefon_instr` VARCHAR(45) NOT NULL,
`stazh` VARCHAR(45) NOT NULL,
`zvannj` VARCHAR(45) NOT NULL,
`nagorodu` VARCHAR(45) NOT NULL,
PRIMARY KEY (`idInstruktor`))
ENGINE = InnoDB
AUTO_INCREMENT = 5
DEFAULT CHARACTER SET = utf8;
-- -----------------------------------------------------
-- Table `sport_club`.`zal`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `sport_club`.`zal` (
`idZal` INT(11) NOT NULL AUTO_INCREMENT,
`nazva_zalu` VARCHAR(45) NOT NULL,
`inventar` VARCHAR(45) NOT NULL,
`mistkist` VARCHAR(45) NOT NULL,
PRIMARY KEY (`idZal`))
ENGINE = InnoDB
AUTO_INCREMENT = 5
DEFAULT CHARACTER SET = utf8;
-- -----------------------------------------------------
-- Table `sport_club`.`grypa`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `sport_club`.`grypa` (
`idGrypa` INT(11) NOT NULL,
`nazva_grypu` VARCHAR(45) NOT NULL,
`Instruktor_idInstruktor` INT(11) NOT NULL,
`Zal_idZal` INT(11) NOT NULL,
`amount` INT (11) NOT NULL,
PRIMARY KEY (`idGrypa`),
INDEX `fk_Grypa_Instruktor1_idx` (`Instruktor_idInstruktor` ASC),
INDEX `fk_Grypa_Zal1_idx` (`Zal_idZal` ASC),
CONSTRAINT `fk_Grypa_Instruktor1`
FOREIGN KEY (`Instruktor_idInstruktor`)
REFERENCES `sport_club`.`instruktor` (`idInstruktor`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_Grypa_Zal1`
FOREIGN KEY (`Zal_idZal`)
REFERENCES `sport_club`.`zal` (`idZal`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8;
-- -----------------------------------------------------
-- Table `sport_club`.`vidviduvach`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `sport_club`.`vidviduvach` (
`idvidviduvach` INT(11) NOT NULL ,
`PIB_vidviduvacha` VARCHAR(45) NOT NULL,
`pasport` VARCHAR(45) NOT NULL,
`data_narodzhennya` DATE NOT NULL,
`adresa` VARCHAR(45) NOT NULL,
`telefon` VARCHAR(45) NOT NULL,
`Grypa_idGrypa` INT(11) NOT NULL,
PRIMARY KEY (`idvidviduvach`),
INDEX `fk_Vidviduvach_Grypa1_idx` (`Grypa_idGrypa` ASC),
CONSTRAINT `fk_Vidviduvach_Grypa1`
FOREIGN KEY (`Grypa_idGrypa`)
REFERENCES `sport_club`.`grypa` (`idGrypa`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8;
-- -----------------------------------------------------
-- Table `sport_club`.`poslyga`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `sport_club`.`poslyga` (
`idposlyga` INT(11) NOT NULL AUTO_INCREMENT,
`nazva_poslugu` VARCHAR(45) NOT NULL,
`vartist_poslugu` INT(11) NOT NULL,
PRIMARY KEY (`idposlyga`))
ENGINE = InnoDB
AUTO_INCREMENT = 3
DEFAULT CHARACTER SET = utf8;
-- -----------------------------------------------------
-- Table `sport_club`.`abonement`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `sport_club`.`abonement` (
`idAbonement` INT(11) NOT NULL,
`data_vudachi` DATE NOT NULL,
`kilkist_vidvidyvan` VARCHAR(45) NOT NULL,
`vud_terminy_dii` VARCHAR(45) NOT NULL,
`cina` INT(11) NOT NULL,
`poslyga_idposlyga` INT(11) NOT NULL,
`Vidviduvach_idvidviduvach` INT(11) NOT NULL,
PRIMARY KEY (`idAbonement`),
INDEX `fk_Abonement_Vidviduvach_idx` (`Vidviduvach_idvidviduvach` ASC),
INDEX `fk_abonement_poslyga1_idx` (`poslyga_idposlyga` ASC),
CONSTRAINT `fk_Abonement_Vidviduvach`
FOREIGN KEY (`Vidviduvach_idvidviduvach`)
REFERENCES `sport_club`.`vidviduvach` (`idvidviduvach`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_abonement_poslyga1`
FOREIGN KEY (`poslyga_idposlyga`)
REFERENCES `sport_club`.`poslyga` (`idposlyga`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8;
Лістинг 2 - Заповнення таблиць
INSERT INTO instruktor
VALUES
(1,'Гордон Іван Семенович', '0934983456', '7 років', 'кмс', '1 місце'),
(2,'Кіров Антон Павлович', '0934983473', '3 років', 'мс', '1 місце'),
(3,'Іванов Петро Сергійович', '0935963354', '5 років', 'мсмк', '2 місце'),
(4,'Марков Федір Дмитрович', '0932983259', '1 років', 'кмс', '3 місце');
INSERT INTO zal
VALUES
(1,'3 МТК', 'Силові тренажери', '12 осіб'),
(2,'2 МРС', 'Кардіо тренажери', '10 осіб'),
(3,'5 УДК', 'Боксерські груші', '15 осіб'),
(4,'7 УНР', 'Фітнес електроніка', '17 осіб');
INSERT INTO grypa
VALUES
(1,'РК-2', '1', '1'),
(2,'НК-8', '2', '2'),
(3,'ЛК-3', '1', '3'),
(4,'РК-3', '4', '4');
INSERT INTO vidviduvach
VALUES
(1,'Іванов Іван Іванович', 'ЕР 67452312', '2000-12-01', 'Купорная 23а', '0954317891', '1'),
(2,'Довгуш Семен Іванович', 'ЕР 67436163', '1992-11-03', 'пр. Богоявленский 133', '0637567812', '2'),
(3,'Тригуб Іван Антонович', 'ЕР 31436790', '1999-02-21', 'Космонавтов 153', '0986119666', '3'),
(4,'Дорош Петро Іванович', 'ЕР 12670010', '2001-10-11', 'пр. Центральний 93', '0954567891', '4'),
(5,'Петренко Петро Іванович','ЕР 12769912', '1990-10-11', 'Купорна 1', '0508355786', '1'),
(6, 'Назаренко Денис Павлович', 'ЕР 12930419', '1989-02-21', 'Декабристів 98', '0732419204', '2'),
(7, 'Ржепецький Володимир Іванович', 'ЕР 12506043', '1994-04-12', 'пр.Богоявленський 2а', '0984581848', '3'),
(8, 'Кондрат Руслан Сергійович', 'ЕР 56643574', '1984-01-21', 'Пушкінська 1в', '0503595819', '4'),
(9, 'Скляніченко Денис Андрійович', 'EP12340103', '2001-10-12', 'Новобужська 34', '0954912930', '1'),
(10, 'Мавроматі Руслан Павлович', 'EP 20930301', '2000-08-16', 'Теслярська 5', '0637437992', '2'),
(11, 'Колахевич Максим Денисович', 'EP 30401001', '2000-11-01', 'Каменців 31', '0931231233', '3'),
(12, 'Денисенко Михайло Петрович', 'EP 30596813', '2000-03-03', 'Кузнецька 1', '063141456', '4'),
(13, 'Німенко Василь Леонідович', 'EP 33949111', '1999-11-01', 'Вокзальна 2а', '0636231511', '1'),
(14, 'Перець Андрій Русланович', 'EP 30103401', '1998-04-01', 'Тетерів 32', '0634212552', '2'),
(15, 'Елисіев Макар Макарович', 'EP 31313144', '2000-12-12', 'Мучна 98', '0639845572', '3'),
(16, 'Ларионов Констянтин Владленович', 'EP 13132144', '2000-09-13', 'Текітна 1', '0933398456', '4'),
(17, 'Кудряшов Вилен Миронович', 'EP 04191844', '2000-01-01', 'Висока 66', '0503398456', '1'),
(18, 'Карпов Ярослав Платонович', 'EP 39194913', '2001-04-04', 'Сінна 25', '0733817981', '2'),
(19, 'Крилов Тарас Кимович', 'EP 50129001', '2000-10-26', 'Робоча 2а', '0991231313', '3'),
(20, 'Нестеров Кондратій Львович', 'EP 49192394', '2000-11-11', 'Майстерська 21', '0993131414', '4');
INSERT INTO poslyga
VALUES
(1,'З інструктором', '900'),
(2,'VIP карта', '3500');
INSERT INTO abonement
VALUES
(1,'2019-01-12', '43', 'річний', '10950', '1','3'),
(2,'2018-11-24', '3', 'недільний', '210', '2','4'),
(3,'2018-04-11', '1', 'одноразовий', '30', '2', '2'),
(4,'2018-05-09', '8', 'місяць', '900', '1','1');
INSERT INTO rozklad
VALUES
(1,'понеділок', '15:00-18:30', '1'),
(2,'вівторок', '15:00-18:30', '4'),
(3,'середа', '15:00-18:30', '2'),
(4,'четверг', '15:00-18:30', '3');
INSERT INTO vidviduvannya
VALUES
(1,'2019-01-05', '15:00-18:30', '1'),
(2,'2018-03-11', '15:00-18:30', '4'),
(3,'2018-02-12', '15:00-18:30', '2'),
(4,'2018-03-20', '15:00-18:30', '3');
Лістнинг 3 - Створення переглядів
CREATE VIEW Rozklad_roboty_treneriv AS
SELECT instruktor.PIB_instruktora, rozklad.chas_zanyattya
FROM instruktor,rozklad
GROUP BY instruktor.PIB_instruktora;
CREATE VIEW Trenera_majut_1_misce AS
SELECT PIB_instruktora, nagorodu
FROM instruktor
WHERE nagorodu =1;
CREATE VIEW abonement_u_vidviduvachiv AS
SELECT
idAbonement,
kilkist_vidvidyvan,
CASE
WHEN vud_terminy_dii = 'richnij' and (data_vudachi > DATE_SUB(now(), INTERVAL 1 YEAR))
THEN 'finish'
WHEN vud_terminy_dii = 'nedilnij' and (data_vudachi > DATE_SUB(now(), INTERVAL 7 DAY))
THEN 'finish'
WHEN vud_terminy_dii = 'odnorazovij' and (data_vudachi > DATE_SUB(now(), INTERVAL 1 DAY))
THEN 'finish'
WHEN vud_terminy_dii = 'misjac' and (data_vudachi > DATE_SUB(now(), INTERVAL 1 MONTH))
THEN 'finish'
ELSE 'active'
END AS `activity`,
PIB_vidviduvacha
FROM abonement, vidviduvach, poslyga
WHERE abonement.Vidviduvach_idvidviduvach = vidviduvach.idvidviduvach and
abonement.poslyga_idposlyga = poslyga.idposlyga;
CREATE VIEW spisok_vkl_poslug_dlya_vidviduvacha AS
SELECT
CASE
WHEN vud_terminy_dii = 'richnij' and (data_vudachi > DATE_SUB(now(), INTERVAL 1 YEAR))
THEN 'finish'
WHEN vud_terminy_dii = 'nedilnij' and (data_vudachi > DATE_SUB(now(), INTERVAL 7 DAY))
THEN 'finish'
WHEN vud_terminy_dii = 'odnorazovij' and (data_vudachi > DATE_SUB(now(), INTERVAL 1 DAY))
THEN 'finish'
WHEN vud_terminy_dii = 'misjac' and (data_vudachi > DATE_SUB(now(), INTERVAL 1 MONTH))
THEN 'finish'
ELSE 'active'
END AS `activity`,
PIB_vidviduvacha,
vud_terminy_dii,
cina,
nazva_poslugu,
vartist_poslugu
FROM abonement, vidviduvach, poslyga
WHERE abonement.Vidviduvach_idvidviduvach = vidviduvach.idvidviduvach and
abonement.poslyga_idposlyga = poslyga.idposlyga
Лістнинг 4 - Триггери
CREATE TRIGGER amount_clients AFTER INSERT ON vidviduvach FOR EACH ROW
UPDATE grypa SET amount = amount + 1
WHERE grypa.idGrypa = NEW.Grypa_idGrypa;
Лістнинг 5 - Збережені процедури
delimiter //
CREATE PROCEDURE vidviduvach_za_grupoy (IN igrypa CHAR(45))
BEGIN
SELECT
pasport,
PIB_vidviduvacha as `PIB`,
data_narodzhennya,
adresa,
telefon,
nazva_grypu
FROM vidviduvach, grypa
WHERE grypa.nazva_grypu = igrypa and vidviduvach.Grypa_idGrypa = grypa.idGrypa;
END//
CALL vidviduvach_za_grupoy ('РК-3');
delimiter //
CREATE PROCEDURE vidviduvachi_instruktora (IN iinstruktor CHAR(45))
BEGIN
SELECT
PIB_instruktora as `instruktor`,
PIB_vidviduvacha as `vidviduvach`,
pasport,
data_narodzhennya,
adresa,
telefon,
Grypa_idGrypa
FROM vidviduvach, instruktor, grypa
WHERE instruktor.PIB_instruktora = iinstruktor AND instruktor.idInstruktor = grypa.idGrypa AND vidviduvach.Grypa_idGrypa = grypa.idGrypa;
END//
CALL vidviduvachi_instruktora('Гордон Іван Семенович');
ВИСНОВКИ
В результаті роботи над курсовим проектом була спроектована та реалізована база даних для ведення обліку тренажерного залу. Були реалізовані всі функції, які були необхідні.
Представлена пояснювальна записка, яка налічує в собі:
аналіз предметної області;
аналіз готових рішень;
постановку задачі;
моделі;
результати розробки;
аналіз результатів розробки;
опис метаданих;
Размещено на Allbest.ru
...Подобные документы
Форми вихідних документів. Перелік запитів до бази даних. Побудова інфологічної моделі, її структурні компоненти: сутності, зв’язки та відносини. Перелік таблиць, опис запитів. Загальна характеристика та головний зміст форм розроблюваної бази даних.
курсовая работа [414,5 K], добавлен 31.01.2014Основні відомості про реляційні бази даних, система управління ними. Основні директиви для роботи в середовищі MySQ. Визначення та опис предметної області. Створення таблиць та запитів бази даних автоматизованої бази даних реєстратури в поліклініці.
курсовая работа [2,9 M], добавлен 06.11.2011Проектування бази даних, що реалізує звіти про графік робіт на об’єктах впродовж місяця. Графічне зображення нагромаджувачів даних. Побудова діаграм потоків даних і переходів станів, таблиць у вигляді двовимірного масиву, запитів. Створення бази даних.
курсовая работа [1,2 M], добавлен 29.02.2012Основні поняття та особливості розробки баз даних в Microsoft Access. Побудова бази даних магазину побутової техніки: створення таблиць та встановлення зв’язків між ними, створення запитів, форм та звітів. Охорона праці і гігієна користувача комп'ютера.
курсовая работа [2,5 M], добавлен 19.01.2010Використання баз даних та інформаційних систем у сучасному житті. Основні відомості про реляційні бази даних. Зв'язування відносин. Структурована мова запитів SQL. Сутність та загальний опис бази даних "Архітектурна компанія". Приклад створення таблиці.
курсовая работа [320,7 K], добавлен 19.06.2015Розробка бази даних для меблевої фірми. Обстеження і аналіз предметної області та побудова концептуальної, логічної та фізичної моделі цієї бази даних. Використання мови програмування Visual Basic при написанні програмного коду, що обслуговує базу даних.
курсовая работа [1,4 M], добавлен 24.10.2010Вибір технологічного інструментарію для реалізації проекту. Розробка сценаріїв для створення бази даних і базових таблиць. Аналіз забезпечення декларативної цілісності реляційних даних. Особливість створення об'єктів для маніпулювання інформацією.
курсовая работа [275,7 K], добавлен 17.05.2019Визначення мети створення бази даних магазину та таблиць, які вона повинна містити. Розгляд видів полів та ключів таблиць. Створення запитів, форм, звітів, макросів та модулів. Вибір системи управління базами даних. Реалізація моделі у Microsoft Access.
курсовая работа [3,8 M], добавлен 20.07.2014Побудова інформаційної системи "Магазин товарів для настільного тенісу" з автоматизації роботи магазину. Концептуальне моделювання бази даних. Обґрунтування вибору СУБД. Логічне проектування бази даних. Схема бази даних. Створення таблиць в конструкторі.
курсовая работа [8,8 M], добавлен 16.12.2015Проектування і реалізація реляційної бази даних для централізованого зберігання інформації з метою полегшення і систематизації даних замовлень клієнтів готельного комплексу. Розробка сценаріїв для створення бази даних і базових таблиць проекту.
курсовая работа [147,2 K], добавлен 02.06.2019Створення баз даних з використанням платформи Microsoft Access 2010 та структурованих запитів SQL. ER-діаграма бази даних з описом кожної сутності та її атрибутів. Розробка інтерфейсу, елементів навігації та макросів для автоматичного виконання запитів.
курсовая работа [3,1 M], добавлен 21.08.2014Системний аналіз бази даних за вхідною та вихідною документацією, визначення сутностей, атрибутів, зв’язків. Створення логічної моделі бази даних із застосуванням нормалізації, алгоритм її роботи. Розробка програмного забезпечення та інтерфейсу СУБД.
курсовая работа [946,8 K], добавлен 02.07.2015Проектування бази даних: визначення об’єктів, структура таблиць, побудова схеми даних, забезпечення цілісності даних, створення певних відношень між таблицями, створення запитів, побудова форм, оформлення об’єктів. Розробка інструкції користувача.
курсовая работа [1,9 M], добавлен 19.09.2014Розробка структури бази даних. ER-моделі предметної області. Проектування нормалізованих відношень. Розробка форм, запитів, звітів бази даних "Автосалон". Тестування роботи бази даних. Демонстрація коректної роботи форми "Додавання даних про покупців".
курсовая работа [4,0 M], добавлен 02.12.2014Поняття та переваги реляційної бази, автоматизація аналізу даних. Опис основних компонентів сховища даних AS/400. Процес перетворення оперативних даних в інформаційні. Багатовимірні бази даних (MDD). Опис даних і створення файлів в інтеграційних базах.
реферат [36,8 K], добавлен 14.01.2012Систематизація знань як основна функція бази даних. Логічне та фізичне проектування бази даних. Створення таблиць у базі даних, визначення основних зв'язків. Інструментальні засоби проектування та створення програмного забезпечення для обробки даних.
курсовая работа [1,4 M], добавлен 29.04.2010Аналіз предметної галузі, постановка задачі, проектування бази даних. UML-моделювання, побудова ER-діаграми, схеми реляційної бази даних у третій нормальній формі. Призначення і логічна структура. Опис фізичної моделі бази даних, програмної реалізації.
курсовая работа [3,5 M], добавлен 28.11.2011Створення інформаційних таблиць бази даних. Створення екранних форм як засобу організації інтерфейсу користувача. Створення запитів для вибору, сортування і обчислення з використанням даних однієї таблиці. Оформлення звітів за допомогою команд MS Access.
лабораторная работа [397,7 K], добавлен 09.09.2010Опис процесу створення технічного завдання на розробку бази даних для сільської бібліотеки. Виявлення масиву даних та їх структури. Внесення інформації в базу. Визначення типів і зв’язків між таблицями. Створення інтерфейсу системи керування базою даних.
контрольная работа [174,9 K], добавлен 07.01.2015Специфікація вимог для кожного з двох користувачів. Концептуальне проектування бази даних. Визначення типів сутностей та зв’язків, доменів. Перетворення концептуальної моделі даних у логічну, визначення набору відношень, підтримки цілісності даних.
курсовая работа [55,1 K], добавлен 15.03.2015