Professional Documents
Culture Documents
Пояснююча записка
Пояснююча записка
КП.ПІ-20-01.05.01.00.000 ПЗ
Змн. Арк. № докум. Підпис Дата
Розроб. Вовчук С.С. Літ. Арк. Аркушів
Розробка бази даних з предметної
Перевір. Левицький І.В області “Косметика ” 21 21
Пояснювальна записка
Н. контр. ВСП ФКЕП ІФНТУНГ, ПІ-20-01
Вступ
Бази даних – це логічно модельовані кластери інформації або даних. З іншого
боку, СКБД (Система керування базами даних) – це програмне забезпечення, яке
використовується для зберігання та доступу до даних простим та ефективним
способом. СКБД надає інтерфейс для виконання різних операцій, таких як
створення бази, зберігання та оновлення даних, створення таблиці та багато іншого,
також завжди забезпечує незалежність даних.
Метою курсового проєкту є проєктування і реалізація бази даних з
предметної області «ІТ-компанії». Її розробку було виконано у двох СКБД:
PostgreSQL та MySQL.
MySQL – це система керування реляційними базами даних з відкритим
кодом. MySQL – крос-платформенна система. Її можна використовувати практично
у всіх сучасних операційних системах, в тому числі Windows, Linux, Mac OS,
Solaris, HP-UX та ін. Вона використовується, в першу чергу, для створення
динамічних веб-сторінок, оскільки має чудову підтримку з боку різноманітних мов
програмування. MySQL використовують такі компанії, як: GitHub, NASA, Tesla,
Netflix, Facebook, Twitter, YouTube, Spotify
SQL (Structured Query Language) – основний інтерфейс роботи з реляційними
БД. SQL став стандартом Національного інституту стандартів США (ANSI) в 1986
році. Стандарт ANSI SQL підтримується всіма популярними ядрами реляційних
БД. SQL використовується для додавання, оновлення та видалення даних,
вилучення наборів даних для обробки транзакцій і аналітичних програм, а також
для управління всіма аспектами роботи бази даних.
MySQL має підтримку не всіх функцій і можливостей SQL. Це зроблено для
того, щоб працювати з MySQL було просто і зручно. Але якщо для проєкту
необхідно якесь розширення, розробники його можуть додати не на шкоду.
Арк.
КП.ПІ-20-01.05.02.00.000 ПЗ
6
Змн. Арк. № докум. Підпис Дата
1 АНАЛІЗ ПРЕДМЕТНОЇ ОБЛАСТІ
Косме́тика — загальна назва засобів і речовин, що застосовують для
поліпшення зовнішнього вигляду або запаху людського тіла. До косметики
входять: креми для тіла, лосьйони, порошки, парфуми, помади, лаки для нігтів, тіні
для повік, туш для вій, хімічна завивка, кольорові контактні лінзи, фарби для
волосся, лак і гелі для волосся, дезодоранти, дитячі продукти, олії, солі для ванн та
багато інших виробів. Їхнє використання має значне поширення, особливо серед
жінок західних країн. Багато виробників розрізняють прикрашальну косметику та
косметику для догляду за шкірою тіла. Більший попит має саме декоративна
косметика. У XX столітті виникло багато компаній і підприємств, що виробляють
продукти для прикрашання і поліпшення запаху тіла людини. Деякі з них стали
транснаціональними корпораціями[1].
Існує кілька класифікацій косметичних засобів декоративного призначення.
Щодо місця застосування:
- З догляду за нігтями – лаки, емалі;
- Для піклування за волоссям (естетичного призначення) – засоби для
зміни форми волосся (препарати для хімічної завивки); засоби для укладання
волосся і закріплення зачіски (муси, піни, лаки); засоби для зміни кольору волосся
(фарби, відтінкові шампуні, освітлювачі волосся).
- Стосовно догляду за обличчям: повіки (тіні для вік, контурні олівці,
каяли, підводки, лайнери); вії (туш для вій); брови (олівці, туш для брів); щоки
(рум'яна); червона облямівка губ (губні помади, блиск для губ, контурні олівці) ;
обличчя в цілому (пудра, тональні креми, ґрунтовка).
Згідно природи дисперсної системи:
- Гомогенні системи (лаки для нігтів)
- Гетерогенні системи (порошки, суспензії, аерозолі, гелі)
Згідно складом:
Арк.
КП.ПІ-20-01.05.02.00.000 ПЗ
7
Змн. Арк. № докум. Підпис Дата
- Органічні та природні компоненти
- Емульгатори
- Консерватори
- Барвники
- Продукти нафтохіміїДля всіх, хто продовжить свій доступ - ми будемо
дуже
тісно займатись з Вами для того, щоб довести до конкретних результатів у роботі з
фріланс клієнтами чи роботі на закордонні компанії
Арк.
КП.ПІ-20-01.05.02.00.000 ПЗ
8
Змн. Арк. № докум. Підпис Дата
визначення структури бази даних та робота з об'єктами цієї бази, тобто
створюється, змінюється і видаляється їх. В цю групу входять такі оператори:
CREATE – використовується для стовення об’єктів БД, ALTER – для модифікації
об’єктів БД та DROP – для видалення об’єктів БД.
Таблиця в реляційній базі даних схожа на таблицю на папері: вона так само
складається з рядків і стовпців. Число і порядок стовпців фіксовані, а кожен
стовпець має ім'я.
Кожному стовпцю присвоюється певний тип даних. Тип даних обмежує набір
допустимих значень, які можуть міститись в полі і визначає смислове значення
даних для обчислень.
Для створення таблиці використовується команда CREATE TABLЕ:
Кожному стовпцю присвоюється певний тип даних. Тип даних обмежує набір
допустимих значень, які можуть міститись в полі і визначає смислове значення
даних для обчислень.
Отже створімо код створення наших таблиць:
Арк.
КП.ПІ-20-01.05.02.00.000 ПЗ
9
Змн. Арк. № докум. Підпис Дата
CosmeticId SERIAL PRIMARY KEY NOT NULL,
ProducerId SERIAL NOT NULL ,
CosmeticToolId SERIAL NOT NULL,
Name VARCHAR(100) NOT NULL,
Description VARCHAR(400) NOT NULL,
StartProduce TIMESTAMP NOT NULL,
FOREIGN KEY (ProducerId) REFERENCES Producers(ProducerId),
FOREIGN KEY (CosmeticToolId) REFERENCES CosmeticTool(CosmeticToolId)
);
Арк.
КП.ПІ-20-01.05.02.00.000 ПЗ
10
Змн. Арк. № докум. Підпис Дата
- UNIQUE: вимагає мати унікальне значення для кожного запису у базі
даних
Тепер створімо запити та View до нашої бази даних. Представлення (View) –
це віртуальна таблиця, вміст якої визначається запитом. Як і таблиця,
представлення складається з ряду іменованих стовпців і рядків даних. Рядки і
стовпці даних беруться з таблиць, зазначених у запиті і динамічно створюваних при
зверненнях до представлення. Представлення виконує функцію фільтру базових
таблиць, на які воно посилається, нижче наведено код запитів:
Арк.
КП.ПІ-20-01.05.02.00.000 ПЗ
11
Змн. Арк. № докум. Підпис Дата
- FullResourceInformation виводить повну інформацію про компоненти
косметики
- GetProductResourceCount виводить повну інформацію про кількість
задіяних ресурсів у косметиці
- GetInvalidConsistenceProcent виводить інформацію для косметики в якій
невірно заповнена консистенція.
Тепер створімо наші функції. Функція – це об'єкт бази даних. В
основному це набір операторів SQL, які приймають лише вхідні параметри,
виконують дії та повертають результат. Функція може повернути лише одне
значення або таблицю, код наведено нижче:
CREATE OR REPLACE FUNCTION GetCosmeticAfter (ryear TIMESTAMP)
RETURNS TABLE(cosmeticid int, name varchar(100))
AS $$
BEGIN
return query
select cos.cosmeticid, cos."name"
From Cosmetics cos
Where cos.StartProduce > ryear;
END;
$$ LANGUAGE plpgsql;
Арк.
КП.ПІ-20-01.05.02.00.000 ПЗ
12
Змн. Арк. № докум. Підпис Дата
AS $$
BEGIN
return query
select p.producerid, p.name
From Producers p
Where p.StartProduce > ryear;
END
$$ LANGUAGE plpgsql;
Арк.
КП.ПІ-20-01.05.02.00.000 ПЗ
13
Змн. Арк. № докум. Підпис Дата
сервер. Підвищується продуктивність – за рахунок локального (по відношенню до
бази даних) зберігання та прекомпиляции вихідного тексту процедури.
Можливості програмування розширюються завдяки застосуванню таких
поширених засобів програмування, як використання вхідних і вихідних параметрів,
а також підтримки багаторазового використання вже створених збережених
процедур, код наведено нижче:
Арк.
КП.ПІ-20-01.05.02.00.000 ПЗ
14
Змн. Арк. № докум. Підпис Дата
Рисунок 2 – Запит на отримання 100 записів
Арк.
КП.ПІ-20-01.05.02.00.000 ПЗ
15
Змн. Арк. № докум. Підпис Дата
Рисунок 3 – Передання ім’я яке відсутнє у таблиці ResourceType
Арк.
КП.ПІ-20-01.05.02.00.000 ПЗ
16
Змн. Арк. № докум. Підпис Дата
Рисунок 5 – Перевірка функції
Арк.
КП.ПІ-20-01.05.02.00.000 ПЗ
17
Змн. Арк. № докум. Підпис Дата
Рисунок 6 – Перевірка запису
Арк.
КП.ПІ-20-01.05.02.00.000 ПЗ
18
Змн. Арк. № докум. Підпис Дата
Рисунок 7 – Результат виклику View
Арк.
КП.ПІ-20-01.05.02.00.000 ПЗ
19
Змн. Арк. № докум. Підпис Дата
Висновки
В даному курсовому проекті була створена база даних, яка реалізує базові
дані які зберігаються про косметику. Було проаналізовано багато нюансів,
пов’язаних як з предметною областю, так і з областю баз даних. З метою спрощення
реалізації задачі було вирішено пропустити такі етапи реалізації предметної
області, можливість виробникам створювати спільний парфюм, вважається, що
кожена косметика, може мати лише одного виробника, ще одним мінусом
вважається що один і той же косметичний засіб, може мати лише один інтерфейс
використання (або тільки порошок, або тільки гель).
До позитивних моментів роботи – була розроблена система яка може бути
використана для обліку наявних косметичних засобів. Також система може бути
легко розширена у майбутньому.
Серед негативних моментів – так як предметна область дуже обширна, було
опущено деякі моменти, наприклад те, що різниця між органічною та натуральною
косметикою є фактично лише юридична. Тим не менш, після її реалізації можна
отримати продукт, який принесе користь для компаній які займаються продажем
косметики, значно спростять пошук косметики за певними параметрами та
дозволяє легко фільтрувати дані.
Арк.
КП.ПІ-20-01.05.02.00.000 ПЗ
20
Змн. Арк. № докум. Підпис Дата
Список використаних джерел
1. Конспект лекцій з дисципліни «Бази даних (Частина ІІ)» для спеціаль-
ності 121 «Інженерія програмного забезпечення». Укладач: Левицький І.В. – викла-
дач ВСП «Фаховий коледж електронних приладів ІФНТУНГу».
2. Методичні вказівки до виконання курсового проєкту з дисципліни
«Бази даних (Частина ІІ)» для спеціальності 121 «Інженерія програмного забезпе-
чення». Розробник: Левицький І.В. – викладач ВСП «Фаховий коледж електронних
приладів ІФНТУНГу».
3. Освітньо-професійна програма «Інженерія програмного забезпечення»
спеціальності 121 Інженерія програмного забезпечення ВСП «Фаховий коледж еле-
ктронних приладів ІФНТУНГу».
4. Положення про курсові та дипломні роботи у ВСП «Фаховий коледж
електронних приладів ІФНТУНГу» введені в дію наказом директора №96 від 31
серпня 2021 року.
5. Косметика — Вікіпедія (wikipedia.org)
6. PostgreSQL: Documentation
7. Бондарєв А. В., Удалова В. К. Грамотна побудова Use-Case-діаграм: навч.
посіб. — Київ: ITbooks, 2008. — 123 с.
8. Download (pgadmin.org)
9. pgAdmin 4 — pgAdmin 4 6.15 documentation
Арк.
КП.ПІ-20-01.05.02.00.000 ПЗ
21
Змн. Арк. № докум. Підпис Дата