Changes between Version 13 and Version 14 of Нормализација и подобрувања на дизајнот на базата


Ignore:
Timestamp:
03/09/25 23:54:59 (3 months ago)
Author:
183175
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Нормализација и подобрувања на дизајнот на базата

    v13 v14  
    44
    55За делот полагање на основен испит, почнувам од делот на Нормализација и Функционална зависност.
    6 Правиме анализа на базата во моментот и гледаме дали ги задоволува 1NF, 2NF, 3NF.
    7 
     6Правиме анализа на базата во моментот и треба да провериме :
     7-> Дали секое поле е атомско? (1НФ)
     8-> Дали сите атрибути зависат целосно од примарниот клуч? (2НФ)
     9-> Дали има транзитивни зависности? (3НФ) // A → B и B → C, тогаш A → C
    810Моментална ситуација на базата е следна :
    911
     
    1113[[Image(baza.png​​, height=200px)]] \\
    1214\\
    13 '''Табела 1 -> orders :''' \\
    14 id_order, payment_method, status, delivery_price, total_price, invoive_code, order_date, id_customer
     15При анализа ги следине сите табелиод базата и одлучуваме:
     16→ Кои полиња зависат од што?
     17→ Што го одредува што?
    1518
    16  
    17 Ова значи дека сè што се однесува на некоја нарачка, зависи од примарен клуч '''id_order'''.
     19'''Табела 1 → orders :''' \\
     20id_order → payment_method, status, delivery_price, total_price, invoice_code, order_date, id_customer
     21Ова значи дека сè што се однесува на некоја нарачка,притоа секој атрибут зависи од примарен клуч '''id_order'''.
     22'''Заклучок: 1НФ - 2НФ - 3НФ   '''
     23Табелата е нормализирана до 3NF и нема потреба од декомпозиција.
    1824
    19 '''Табела 2 -> customers:''' \\
    20 id_customer, email, first_name, last_name, delivery_address, password, phone
     25'''Табела 2 → customers:''' \\ 1НФ - 2НФ - 3НФ 
     26id_customer → email, first_name, last_name, delivery_address, password, phone
     27'''id_customer''' е примарниот клуч па ги одредува сите други полиња што го опишуваат клиентот.
     28'''Заклучок: 1НФ - 2НФ - 3НФ   '''
     29Табелата е нормализирана до 3НФ и нема потреба од декомпозиција.
    2130
    22 '''id_customer''' е примарниот клуч па ги одредува сите други полиња што го опишуваат клиентот.
    23 
    24 '''Табела 3 -> delivery:''' \\
     31'''Табела 3 → delivery:''' \\
    2532id_delivery, delivery_address, status, id_order
    2633
    2734
    28 Во оваа табела, '''id_delivery''' е примарниот клуч со кој добиваме инфо каде дадена нарачка и каков статус има.
     35Во оваа табела, '''id_delivery''' е примарниот клуч со кој добиваме инфо каде дадена нарачка и каков статус има притоа имаме id_order кој е надворешен клуч и не влијае на зависностите на другите атрибути.
     36'''Заклучок: 1НФ - 2НФ - 3НФ   '''
     37Табелата е нормализирана до 3НФ и нема потреба од декомпозиција.
    2938
    30 '''Табела 4 -> contains:'''
     39'''Табела 4 contains:'''
    3140\\
    3241quantity, size, price, id_order, id_stock
    3342
    3443
     44id_order + id_stock → quantity, size, price
     45Табелата contains е нормализирана во 2НФ и 3НФ и нема потреба од декомпозиција иако имаме ваков спој за клуч.
     46Табелата contains го поврзува id_order со id_stock, и секоја нарачка ја означува количината на производот кој е поврзан со нарачката.
     47'''Заклучок: 1НФ - 2НФ - 3НФ   '''
     48Табелата е нормализирана до 3NF и нема потреба од декомпозиција.
    3549
    36 
    37 '''Табела 5 -> stock:'''
     50'''Табела 5 → stock:'''
    3851\\ id_stock, id_product, size, quantity, price
    3952
    4053
    41 '''Табела 6 -> products :'''
     54Оваа табела е важна бидејки за секој продукт треба да чуваме податоци за истиот да видиме со колкава кочина располагаме.
     55Табелата е во 2НФ, затоа што сите атрибути зависат целосно од примарниот клуч (id_stock).
     56'''Заклучок: 1НФ - 2НФ - 3НФ   '''
     57Табелата е нормализирана до 3NF и нема потреба од декомпозиција.
     58
     59'''Табела 6 → products :'''
    4260\\ id_product, id_category, product_name, color, price, description, image_url
    4361
    4462
    45 '''Табела 7 -> categories:'''
     63Табелата е во 2НФ, затоа што сите атрибути зависат целосно од id_product, кој е примарен клуч.
     64'''Заклучок: 1НФ - 2НФ - 3НФ   '''
     65Табелата е нормализирана до 3NF и нема потреба од декомпозиција.
     66
     67'''Табела 7 → categories:'''
    4668\\ id_category, category_name
     69Табелата е во 2NF, затоа што сите атрибути зависат целосно од id_category, кој е примарен клуч.
     70'''Заклучок: 1НФ - 2НФ - 3НФ   '''
     71Табелата е нормализирана до 3NF и нема потреба од декомпозиција.
    4772
    48 При анализа ги следине сите табелиод базата и одлучуваме:
    49 -> Кои полиња зависат од што?
    50 -> Што го одредува што?
    5173
     74