FAQ |
Kalender |
|
![]() |
#1 | ||
|
|||
Klarade millennium-buggen
|
Här visar jag ett försök att ha normaliserat din databas till 3NF för att visa vilka konsekvenser det får och hur det kan se ut i just ditt fall.
Databasen behöver normaliseras så man lägger upp separata tabeller för: Tabell: Kund - Kundnr (PK) - Personnr (ev. FK) - Namn Tabell: KundOrder - Ordernr (PK) - Datum - Kundnr (FK->Kund.Kundnr) Tabell: KundOrderRad - Ordernr (PK->KundOrder.Ordernr) - RadNr (PK) - ArtikelID (FK->Artikel.ArtikelID) - FaktisktPris - Antal - RadRabattBelopp Tabell: Artikel - ArtikelID (PK) - Benämning - Pris - Moms Tabell: Betalning - BetalningsID (PK) - Datum - OrderNr (FK->KundOrder.Ordernr) - Belopp - Betalsätt (FK->Betalsätt.BetalsättID) Tabell: Betalsätt - BetalsättID (PK) - BetalsättNamn Du behöver normalt bryta ut betalning från kundorder-tabellen eftersom kunder ofta betalar fel belopp och då kommer det att finnas flera olika betalningar med olika datum som du behöver hålla koll på. PK => Primärnyckel (Primary Key på engelska, kan vara en eller flera kolumner i databasen) FK => Främmande nyckel (Forreign Key på engelska) Pekar på en primärnyckel i en annan tabell. En FK kan även vara en PK samtidigt, då kallas det för att relationen ät Identifying.... Senast redigerad av Conny Westh den 2013-12-15 klockan 04:12 |
||
![]() |
![]() |
Svara |
|
|