Changes between Version 10 and Version 11 of Normalization
- Timestamp:
- 09/30/25 22:06:35 (2 weeks ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Normalization
v10 v11 1 = Функционални зависности =1 = Функционални релација 2 2 3 3 Дадена е релационата шема за базата на податоци која ја креиравме, која може да … … 20 20 }}} 21 21 22 == Иницијални функционални зависности22 == Иницијални функционални релација 23 23 24 24 1. {{{id → name, email, password, is_admin}}} … … 38 38 8. {{{order_batch_id → quantity, price_per_unit, total_price, created_at, updated_at, order_id, batch_id}}} 39 39 40 == Изведени функционални зависностикои не се присутни во иницијалниот список40 == Изведени функционални релација кои не се присутни во иницијалниот список 41 41 42 42 === Транзитивни … … 48 48 9. {{{order_id → status, estimated_delivery_date}}} 49 49 50 == Анализа на функционални зависностикористејќи LHS/RHS класификација51 52 Ова е методот за анализа на функционалните зависностипреку групирање на атрибутите во три категории50 == Анализа на функционални релација користејќи LHS/RHS класификација 51 52 Ова е методот за анализа на функционалните релација преку групирање на атрибутите во три категории 53 53 54 54 {{{LHS}}} — атрибути кои се појавуваат само на левата страна (како детерминанти) 55 {{{RHS}}} — атрибути кои се појавуваат само на десната страна (како зависности)56 {{{LHS + RHS}}} — атрибути кои се појавуваат и на двете страни на зависностите55 {{{RHS}}} — атрибути кои се појавуваат само на десната страна (како релација) 56 {{{LHS + RHS}}} — атрибути кои се појавуваат и на двете страни на релацијате 57 57 58 58 Оваа техника помага при разбирање на улогата на атрибутите во одредувањето на другите, и е корисна за нормализација и откривање на кандидатни клучеви. … … 70 70 ==== Само RHS 71 71 72 Атрибути кои се појавуваат само како зависности:72 Атрибути кои се појавуваат само како релација: 73 73 74 74 {{{ … … 87 87 ==== LHS + RHS 88 88 89 Атрибути кои се појавуваат и на левата и на десната страна на функционалните зависности:89 Атрибути кои се појавуваат и на левата и на десната страна на функционалните релација: 90 90 91 91 {{{product_id, batch_id, transport_id, order_id}}} 92 92 93 Овие атрибути можат да воведат некои транзитивни зависностии проблеми.94 95 == LHS Транзитивен closure93 Овие атрибути можат да воведат некои транзитивни релација и проблеми. 94 95 == LHS Транзитивен затворач 96 96 97 97 Нека {{{X+ = {order_id, transport_id, payment_id}}}} … … 141 141 == Тековна нормална форма 142 142 143 Дадени функционални зависности, релацијата {{{R}}} веќе е во {{{1NF}}} согласно143 Дадени функционални релација, релацијата {{{R}}} веќе е во {{{1NF}}} согласно 144 144 со дефиницијата, бидејќи нема мултивредносни атрибути. 145 145 … … 151 151 152 152 - Таа веќе е во прва нормална форма {{{1NF}}} 153 - Нема парцијални зависностина никакви непријатни атрибути (определени153 - Нема парцијални релација на никакви непријатни атрибути (определени 154 154 атрибути) од стриктен подсет на било кој кандидатен клуч 155 155 156 156 Но релацијата не е во {{{2NF}}} поради тоа што имаме јасни парцијални 157 зависности. Контрапример е {{{batch_id → batch_code, production_date}}} - но има157 релација. Контрапример е {{{batch_id → batch_code, production_date}}} - но има 158 158 и повеќе. 159 159 … … 225 225 {{{id, name, email, password, is_admin}}} 226 226 227 Функционални зависности227 Функционални релација 228 228 229 229 {{{id → name, email, password, is_admin}}} … … 231 231 Кандидатен клуч: {{{id}}} 232 232 233 Оваа релација е во {{{2NF}}} бидејќи не постојат парцијални зависности.234 235 За постигнување {{{3NF}}}, не се јавуваат транзитивни зависности, така да оваа233 Оваа релација е во {{{2NF}}} бидејќи не постојат парцијални релација. 234 235 За постигнување {{{3NF}}}, не се јавуваат транзитивни релација, така да оваа 236 236 релација е во {{{3NF}}}. 237 237 … … 244 244 {{{id, name, country, registration_number, tax_code, contact_person, phone_number, billing_address, shipping_address}}} 245 245 246 Функционални зависности246 Функционални релација 247 247 248 248 {{{id → name, country, registration_number, tax_code, contact_person, phone_number, billing_address, shipping_address}}} … … 250 250 Кандидатен клуч {{{id}}} 251 251 252 Оваа релација е во {{{2NF}}} и не се појавуваат транзитивни зависности, така да е во {{{3NF}}} и во {{{BCNF}}}.252 Оваа релација е во {{{2NF}}} и не се појавуваат транзитивни релација, така да е во {{{3NF}}} и во {{{BCNF}}}. 253 253 254 254 === {{{PRODUCER}}} … … 258 258 {{{producer_id, address, country, phone_number, email}}} 259 259 260 Функционални зависности260 Функционални релација 261 261 262 262 {{{producer_id → address, country, phone_number, email}}} … … 272 272 {{{product_id, name, description, hs_code, price, unit_of_measure}}} 273 273 274 Функционални зависности274 Функционални релација 275 275 276 276 {{{product_id → name, description, hs_code, price, unit_of_measure}}} … … 286 286 {{{batch_id, batch_code, production_date, expiration_date, net_weight, gross_weight, units_per_batch}}} 287 287 288 Функционални зависности288 Функционални релација 289 289 290 290 {{{batch_id → batch_code, production_date, expiration_date, net_weight, gross_weight, units_per_batch}}} … … 300 300 {{{transport_id, departure_point, arrival_point, estimated_departure_date, estimated_arrival_date, incoterm, insurance_conditions}}} 301 301 302 Функционални зависности302 Функционални релација 303 303 304 304 {{{transport_id → departure_point, arrival_point, estimated_departure_date, estimated_arrival_date, incoterm, insurance_conditions}}} … … 314 314 {{{order_id, date, status, estimated_delivery_date, buyer_id, receiver_id, transport_id}}} 315 315 316 Функционални зависности316 Функционални релација 317 317 318 318 {{{order_id → date, status, estimated_delivery_date, buyer_id, receiver_id, transport_id}}} … … 328 328 {{{payment_id, amount, currency, due_date, exchange_rate, payment_date, payment_method, payment_status, order_id}}} 329 329 330 Функционални зависности330 Функционални релација 331 331 332 332 {{{payment_id → amount, currency, due_date, exchange_rate, payment_date, payment_method, payment_status, order_id}}} … … 342 342 {{{order_batch_id, quantity, price_per_unit, total_price, created_at, updated_at, order_id, batch_id}}} 343 343 344 Функционални зависности344 Функционални релација 345 345 346 346 {{{order_batch_id → quantity, price_per_unit, total_price, created_at, updated_at, order_id, batch_id}}}