wiki:Normalization

Version 2 (modified by 211561, 2 weeks ago) ( diff )

--

Users

  • 1NF: Табелата е во 1NF бидејќи секое поле содржи атомски вредности и нема дупликат вредности.
  • 2NF: Табелата е во 2NF бидејќи сите атрибути зависат целосно од примарниот клуч и нема делумни зависности.
  • BCNF: Табелата е во BCNF бидејќи секоја зависност е целосно зависна од примарниот клуч и нема транзитивни зависности.

Clients

Во новата база на податоци, табелата CLIENTS ги заменува старите табели BUYER и RECEIVER. Оваа промена беше направена за да се поедностави структурата на базата и да се избегне двојна евиденција за истите ентитети. Наместо две посебни табели (една за купувачи и друга за примачи), сега и купувачите и примачите се чуваат во една табела, што е поефикасно и попрактично за управување со податоците.

BUYER и RECEIVER беа две различни табели, со различни атрибути за секој ентитет. Секој купувач имаше своја табела за информации поврзани со купувањето, а секој примач имаше посебна табела за податоците за испорака.

CLIENTS сега ја обединува оваа функционалност, бидејќи и купувачот и примачот може да бидат идентификувани како клиенти. Табелата CLIENTS вклучува целокупната информација за компаниите кои учествуваат во процесот на продажба и испорака, вклучувајќи и billing_address и shipping_address, кои се претходно разликувани помеѓу купувачот и примачот.

  • 1NF: Табелата CLIENTS е во 1NF затоа што сите атрибути содржат атомски вредности и нема дупликат вредности. Адресата за наплата и испорака, и сите други атрибути се одвоени и не се повторуваат.
  • 2NF: Табелата е во 2NF затоа што сите атрибути зависат целосно од примарниот клуч id. Не постојат делумни зависности, бидејќи сите атрибути се однесуваат на целиот ентитет (клиент).
  • BCNF: Табелата е во BCNF затоа што секоја зависност е целосно зависна од примарниот клуч и нема транзитивни зависности. Нема не-клучни атрибути кои зависат од друг не-клучен атрибут.

Transports

  • 1NF: Табелата е во 1NF бидејќи секое поле содржи атомски вредности и нема дупликат вредности.
  • 2NF: Табелата е во 2NF бидејќи сите атрибути зависат целосно од примарниот клуч. Нема делумни зависности.
  • BCNF: Табелата е во BCNF бидејќи секоја зависност е целосно зависна од примарниот клуч и нема транзитивни зависности.

Producers

  • 1NF: Табелата е во 1NF бидејќи секое поле содржи атомски вредности и нема дупликат вредности.
  • 2NF: Табелата е во 2NF бидејќи сите атрибути зависат целосно од примарниот клуч. Нема делумни зависности.
  • BCNF: Табелата е во BCNF бидејќи нема транзитивни зависности и сите атрибути зависат целосно од примарниот клуч.

Products

  • 1NF: Табелата е во 1NF бидејќи секое поле содржи атомски вредности и нема дупликат вредности.
  • 2NF: Табелата е во 2NF бидејќи сите атрибути зависат целосно од примарниот клуч. Странскиот клуч producer_id не создава делумни зависности.
  • BCNF: Табелата е во BCNF бидејќи сите атрибути зависат целосно од примарниот клуч и нема транзитивни зависности.

Batches

Во новата база на податоци, табелата BATCHES е додадена како нова структура која ги претставува производствените серии на производите. Оваа табела е важна за управување со производите во контекст на производствените серии, нивните рокови на траење и друга релевантна продукциска информација.

  • 1NF: Табелата BATCHES е во 1NF бидејќи секое поле содржи атомски вредности. Нема дупликат вредности или структурни комплификации. Секој ред претставува една производствена серија и не постојат атрибути кои содржат повеќе од една вредност.
  • 2NF: Табелата BATCHES е во 2NF бидејќи сите атрибути зависат целосно од примарниот клуч id. Странскиот клуч product_id не создава делумни зависности. Секој атрибут во табелата е директно поврзан со целокупниот идентитет на производната серија, кој е идентификуван преку примарниот клуч.
  • BCNF: Табелата BATCHES е во BCNF затоа што нема транзитивни зависимости. Сите атрибути зависат целосно од примарниот клуч id и нема зависности каде не-клучни атрибути зависат од други не-клучни атрибути.

Orders

  • 1NF: Табелата е во 1NF бидејќи сите атрибути содржат атомски вредности и нема дупликат вредности.
  • 2NF: Табелата е во 2NF бидејќи сите атрибути зависат целосно од примарниот клуч. Foreign keys (buyer_id, receiver_id, transport_id, payment_id) не создаваат делумни зависности.
  • BCNF: Табелата е во BCNF бидејќи секоја зависност е целосно зависна од примарниот клуч и нема транзитивни зависности.

Order Batches

Табелата ORDER_BATCHES е нов додаток во базата кој овозможува детален и прецизен запис на кои производствени серии (batches) се вклучени во секоја нарачка. Ова ја заменува претходната едноставна табела ORDER_PRODUCT и го подобрува групирањето на производите.

  • 1NF: Табелата е во 1NF бидејќи сите атрибути содржат атомски вредности и нема дупликат вредности.
  • 2NF: Табелата е во 2NF бидејќи сите атрибути зависат целосно од примарниот клуч составен од order_id и batch_id.
  • BCNF: Табелата е во BCNF бидејќи нема транзитивни зависности и сите зависности се од примарните клучеви.

Invoices

  • 1NF: Табелата е во 1NF бидејќи секое поле содржи атомски вредности и нема дупликат вредности.
  • 2NF: Табелата е во 2NF бидејќи сите атрибути зависат целосно од примарниот клуч. Странскиот клуч order_id не создава делумни зависности.
  • BCNF: Табелата е во BCNF бидејќи сите атрибути зависат целосно од примарниот клуч и нема транзитивни зависности.

Packing Lists

Табелата PACKING_LISTS е нова структура во базата која има за цел да го подобри управувањето со логистиката на нарачките. Се користи за следење и управување со податоците кои се поврзани со пакувањето на производите во нарачките.

  • 1NF: Табелата е во 1NF бидејќи секое поле содржи атомски вредности и нема дупликат вредности.
  • 2NF: Табелата е во 2NF бидејќи сите атрибути зависат целосно од примарниот клуч. Странскиот клуч order_id не создава делумни зависности.
  • BCNF: Табелата е во BCNF бидејќи нема транзитивни зависности и сите атрибути зависат целосно од примарниот клуч.

Payments

  • 1NF: Табелата е во 1NF бидејќи сите атрибути содржат атомски вредности и нема дупликат вредности.
  • 2NF: Табелата е во 2NF бидејќи сите атрибути зависат целосно од примарниот клуч. Странскиот клуч order_id не создава делумни зависности.
  • BCNF: Табелата е во BCNF бидејќи сите атрибути зависат целосно од примарниот клуч и нема транзитивни зависности.
Note: See TracWiki for help on using the wiki.