Построение редуцированного минимального кольцевого покрытия

Определение CF-зависимостей по классам эквивалентности представлено на рисунках 2.7 – 2.11. Построение кольцевого покрытия

 

Минимальное кольцевое покрытие (data_supply, vremy_postavki;) -> supplierid (productid, data_voz, vremy_voz;) -> employeeid  (productid, data_zakaza, employeeid; clientid, data_zakaza, productid;) (month_r, year_r;) -> arenda, kommunal_yslygi, reklama, vnutr_rashodi (month_d, year_d;) -> viruchka_emploee (employeeid;) -> month_d, year_d (month, year;) -> rashodid, dohodid (emloyeeid;) -> oklad, premia, avans, zarplata (productid;) -> artikulid (supplierid;) -> name Получение кольцевого минимального редуцированного покрытия Естественное характеристическое множество для кольцевого покрытия f(C):  data_supply, vremy_postavki -> supplierid  productid, data_voz, vremy_voz -> employeeid

Рисунок 2.7 - Построение редуцированного минимального кольцевого покрытия

 

 month_r, year_r -> arenda, kommunal_yslygi, reklama, vnutr_rashodi  month_d, year_d -> viruchka_emploee  employeeid -> month_d, year_d  month, year -> rashodid, dohodid  emloyeeid -> oklad, premia, avans, zarplata  productid -> artikulid  supplierid -> name Левая редукция или перенос в правую часть 1. Проверка CF-зависимости:  (data_supply, vremy_postavki;) -> supplierid 2. Проверка CF-зависимости:  (clientid, productid, data_voz, vremy_voz;) -> employeeid 3. Проверка CF-зависимости:  (month_r, year_r;) -> arenda, kommunal_yslygi, reklama, vnutr_rashodi 4. Проверка CF-зависимости:  (month_d, year_d;) -> viruchka_emploee 5. Проверка CF-зависимости:  (employeeid;) -> month_d, year_d

Рисунок 2.8 - Построение редуцированного минимального кольцевого покрытия

 

6. Проверка CF-зависимости:  (month, year;) -> rashodid, dohodid 7. Проверка CF-зависимости:  (emloyeeid;) -> oklad, premia, avans, zarplata 8. Проверка CF-зависимости:  (productid;) -> artikulid 9. Проверка CF-зависимости:  (supplierid;) -> name Проверка покрытия на праворедуцированность 1. Проверка CF-зависимости:  (data_supply, vremy_postavki;) -> supplierid 2. Проверка CF-зависимости:  (clientid, productid, data_voz, vremy_voz;) -> employeeid 3. Проверка CF-зависимости:  (month_r, year_r;) -> arenda, kommunal_yslygi, reklama, vnutr_rashodi 4. Проверка CF-зависимости:  (month_d, year_d;) -> viruchka_emploee

Рисунок 2.9 - Построение редуцированного минимального кольцевого покрытия


 

5. Проверка CF-зависимости:  (employeeid;) -> month_d, year_d 6. Проверка CF-зависимости:  (month, year;) -> rashodid, dohodid 7. Проверка CF-зависимости:  (emloyeeid;) -> oklad, premia, avans, zarplata 8. Проверка CF-зависимости:  (productid;) -> artikulid 9. Проверка CF-зависимости:  (supplierid;) -> name Минимальное редуцированное кольцевое покрытие C  (data_supply, vremy_postavki;) -> supplierid  (clientid, productid, data_voz, vremy_voz;) -> employeeid  (month_r, year_r;) -> arenda, kommunal_yslygi, reklama, vnutr_rashodi  (month_d, year_d;) -> viruchka_emploee  (employeeid;) -> month_d, year_d  (month, year;) -> rashodid, dohodid  (emloyeeid;) -> oklad, premia, avans, zarplata  (productid;) -> artikulid  (supplierid;) -> name

Рисунок 2.10 - Построение редуцированного минимального кольцевого покрытия

 

Естественное характеристическое множество f(C):  data_supply, vremy_postavki -> supplierid  clientid, productid, data_voz, vremy_voz -> employeeid  month_r, year_r -> arenda, kommunal_yslygi, reklama, vnutr_rashodi  month_d, year_d -> viruchka_emploee  employeeid -> month_d, year_d  month, year -> rashodid, dohodid  emloyeeid -> oklad, premia, avans, zarplata  productid -> artikulid  supplierid -> name R0 = (data_supply, vremy_postavki, supplierid) K0 = { data_supply, vremy_postavki } R1 = (clientid, productid, data_voz, vremy_voz, employeeid) K1 = { clientid, productid, data_voz, vremy_voz } R2 = (month_r, year_r, arenda, kommunal_yslygi, reklama, vnutr_rashodi) K2 = { month_r, year_r } R3 = (month_d, year_d, viruchka_emploee) K3 = { month_d, year_d } R4 = (employeeid, month_d, year_d) K4 = { employeeid } R5 = (month, year, rashodid, dohodid) K5 = { month, year } R6 = (emloyeeid, oklad, premia, avans, zarplata) K6 = { emloyeeid } R7 = (productid, artikulid) K7 = { productid } R8 = (supplierid, name) K8 = { supplierid }

Рисунок 2.11 - Построение редуцированного минимального кольцевого покрытия

 


ER-схема базы данных

 

В приложении А приведены схемы базы данных до минимизации и после минимизации. Построение запросов на SQL

Запрос на выборку

Словесная формулировка запроса

Перечислить всех клиентов и их паспортные данные, которые приобрели продукцию компании Fuzafungin.

Текст запроса на языке SQL

Текст запроса на языке SQL представлен на рисунке 2.20.

 

SELECT clients.name, clients.serial_pas, clients.number_pas, product.name_product, orders.data_zakaza, orders.orderid as Number_Order; FROM ((orders JOIN sotrud s ON orders. clientid = clients. clientid) JOIN product ON orders.productid = product.productid); WHERE (product.name_product = "Fuzafungin")

Рисунок 2.20 - Текст запроса на языке SQL

 


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: