Changes between Version 14 and Version 15 of Нормализација и подобрувања на дизајнот на базата
- Timestamp:
- 08/26/25 22:08:34 (11 days ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Нормализација и подобрувања на дизајнот на базата
v14 v15 1 = Реализирани контроли 2 **R**={EmployeeID (кондуктер_к_ид), EmployeeName, EmployeeSurName, Position, Department, Email, Password, kontrol_id, kontroli_datum, inl_id, inl_datum_pocetok, inl_datum_kraj, a_registracija, a_seriski_broj, a_broj_sedista, li_id, li_ime, li_pravec, kz_id, kz_dokument, kz_datum, kz_iznos, kz_plateno, kz_datum_plateno, kzn_ime, kzn_adresa, kzn_telefon, patnik_k_id, patnik_k_ime, patnik_k_adresa, patnik_k_email, patnik_k_telefon, patnik_k_is_admin, patnik_k_lozinka} 1 ==== ТАБЕЛА customer ==== 3 2 4 ==== Функционални зависимости:==== 5 * konduktor_k_id -> сите атрибути за кондуктер 3 * Функционални зависимости: CustomerID -> CustomerName, CustomerSurName, Email, Address, CustomerContact, Password 6 4 7 * kontroli_id -> kontroli_datum, konduktor_k_id, inl_id 5 Кандидат клуч: CustomerID 8 6 9 * inl_id -> inl_datum_pocetok, inl_datum_kraj, a_registracija, li_id 7 Нормални форми: 1NF, 2NF, 3NF, BCNF - задоволени 10 8 11 * a_registracija -> a_seriski_broj, a_broj_sedista 9 Декомпозиција: Не е потребна 12 10 13 * li_id -> li_ime, li_pravec 11 ==== ТАБЕЛА customerfeedback ==== 14 12 15 * kz_id -> kz_dokument, kz_datum, kz_iznos, kz_plateno, kz_datum_plateno, kontrola_id, konduktor_k_id 13 Функционални зависимости: FeedbackID -> CustomerID, ProductID, Rating, Comment, FeedbackDate, TransactionID 16 14 17 * kzr_kz_id -> patnik_k_id 15 Кандидат клуч: FeedbackID 18 16 19 * kzn_kz_id -> kzn_ime, kzn_adresa, kzn_telefon 17 Нормални форми: 1NF, 2NF, 3NF, BCNF - задоволени 20 18 21 * patnik_k_id -> patnik_k_ime, patnik_k_адреса, патник_k_ајме и другите атрибути 19 Декомпозиција: Не е потребна 22 20 21 ==== ТАБЕЛА employee ==== 23 22 24 ==== Кандидат клуч: ==== 25 ** kz_id ** 23 Функционални зависимости: EmployeeID -> EmployeeName, EmployeeSurName, Position, Department, Email, Password 26 24 27 ==== Нормални форми: ==== 25 Кандидат клуч: EmployeeID 28 26 29 * 1NF и 2NFзадоволени27 Нормални форми: 1NF до BCNF - задоволени 30 28 31 * 3NF нарушена поради транзитивни зависности 29 Декомпозиција: Не е потребна 32 30 33 * BCNF не е достигната 31 ==== ТАБЕЛА maintenance ==== 34 32 35 ==== Декомпозиција: ==== 33 Функционални зависимости: MainID -> EmployeeID, ProductID, MainDate, Description, Cost, Status, StartTime, EndTime 36 34 37 ** R1 ** = {konduktor_k_id, името и останатите атрибути за кондуктер, kontroli_id, kz_id, kz_dokument, kz_datum, kz_износ, kz_plateno, kz_datum_plateno, kzn_име, kzn_адреса, kzn_телефон, патник_k_id и атрибути} 35 Кандидат клуч: MainID 38 36 39 ** R2 ** = {kontroli_id, kontroli_datum, konduktor_k_id, inl_id, inl_datum_pocetok, inl_datum_kraj, a_registracija, a_seriski_broj, a_broj_sedista, li_id, li_ime, li_pravec} 37 Нормални форми: 1NF до BCNF - задоволени 40 38 41 Продолжува декомпозиција на R2 по inl_id и a_registracija и li_id како во претходниот дел 39 Декомпозиција: Не е потребна 42 40 43 ==== Реализирани возења од патници ==== 44 ** Табела и атрибути: ** 45 R={patnik_k_id, patnik_k_име, patnik_k_адреса, patnik_k_емаил, patnik_k_телефон, patnik_k_is_admin, patnik_k_лозинка, b_id, b_status, b_datum_na_kupuvanje, b_datum_istekuvanje, tb_id, tb_име, tb_трајност, tb_цена, vozenje_id, vozenje_start, vozenje_end, vozenje_status, pnl_id, pnl_reden_broj, p_id, p_име, m_id, m_opstina, m_ulica, li_id, li_име, li_pravec} 41 ==== ТАБЕЛА procurement ==== 46 42 47 ==== Функционални зависимости: ==== 43 Функционални зависимости: TransactionID -> EmployeeID, CustomerID, ProductID, ProcurementDate, Quantity, Status, Notified, GroupID 48 44 49 * patnik_k_id -> сите атрибути за патник 45 Кандидат клуч: TransactionID 50 46 51 * b_id -> b_status, датуми, tb_id, patnik_k_id 47 Нормални форми: 1NF до BCNF - задоволени 52 48 53 * tb_id -> tb_име, tb_трајност, tb_цена49 Декомпозиција: Не е потребна 54 50 55 * vozenje_id -> vozenje_start, vozenje_end, vozenje_status, b_id, patnik_k_id, pnl_id 51 ==== ТАБЕЛА procurement_request ==== 56 52 57 * pnl_id -> pnl_reden_broj, li_id, p_id 53 Функционални зависимости: RequestID -> CustomerID, ProductID, Quantity, RequestedAt, Status, PaymentMethod, PaymentStatus, MonthlyPay, TotalPrice, Duration, CardID, TransactionType, GroupID 58 54 59 * li_id -> li_име, li_pravec 55 Кандидат клуч: RequestID 60 56 61 * p_id -> p_име, m_id 57 Нормални форми: 1NF, 2NF задоволени; Можно да постои транзитивна зависност (PaymentMethod, PaymentStatus, CardID) 62 58 63 * m_id -> m_opstina, m_ulica 59 Декомпозиција: Препорачливо да се провери можност за декомпозиција во делови поврзани со плаќања доколку постои транзитивност 64 60 65 ==== Кандидат клуч: ==== 66 ** vozenje_id ** 61 ==== ТАБЕЛА product ==== 67 62 68 ==== Нормални форми: ==== 63 Функционални зависимости: ProductID -> Model, Price, LicensePlate, Status 69 64 70 * 1NF, 2NF задоволени 65 Кандидат клуч: ProductID 71 66 72 * 3NF нарушена поради транзитивни зависности67 Нормални форми: 1NF до BCNF - задоволени 73 68 74 * BCNF не е достигната69 Декомпозиција: Не е потребна 75 70 76 ==== Декомпозиција:====71 ==== ТАБЕЛА t_type ==== 77 72 78 * R1 = {patnik_k_id, b_id, b_status, b_datum_na_kupuvanje, b_datum_istekuvanje, tb_id, tb_име, tb_трајност, tb_цена, vozenje_id, vozenje_start, vozenje_end, vozenje_status, pnl_id, pnl_reden_broj, p_id, p_име, m_id, m_opstина, m_ulica, li_id, li_име, li_pravec} 73 Функционални зависимости: TransactionID -> Type, Duration, MonthlyPay, TotalPrice 79 74 80 * R2 = {patnik_k_id, patnik_k_име, patnik_k_адреса, patnik_k_емаил, patnik_k_телефон, patnik_k_is_admin, patnik_k_лозинка} 75 Кандидат клуч: TransactionID 81 76 82 * Рекаде под декомпозиција на R1 во поситни подмногу за секој од горните 77 Нормални форми: 1NF до BCNF - задоволени 78 79 Декомпозиција: Не е потребна 80 81 ==== ТАБЕЛА trailer ==== 82 83 Функционални зависимости: ProductID -> Capacity 84 85 Кандидат клуч: ProductID 86 87 Нормални форми: 1NF до BCNF - задоволени 88 89 Декомпозиција: Не е потребна 90 91 ==== ТАБЕЛА truck ==== 92 93 Функционални зависимости: ProductID -> HP 94 95 Кандидат клуч: ProductID 96 97 Нормални форми: 1NF до BCNF - задоволени 98 99 Декомпозиција: Не е потребна 100 101 ==== ТАБЕЛА views ==== 102 103 Функционални зависимости: (CustomerID, ProductID) -> нема други атрибути 104 105 Кандидат клуч: (CustomerID, ProductID) 106 107 Нормални форми: 1NF до BCNF - задоволени 108 109 Декомпозиција: Не е потребна 110 111 ==== ТАБЕЛА wallet ==== 112 113 Функционални зависимости: WalletID -> CustomerID, Balance, CardNumber, ExpiryDate, CVV, CardHolderName 114 115 Кандидат клуч: WalletID 116 117 Нормални форми: 1NF до BCNF - задоволени 118 119 Декомпозиција: Не е потребна