Avatar billede zamiel Nybegynder
05. oktober 2007 - 19:18 Der er 8 kommentarer og
1 løsning

Råd søges til design af database

Jeg sidder lige pt og skal lave et design til et bestillings modul. Det jeg er kommet til at tænke på er hvordan jeg skal opbygge den så bestillinger i systemet ikke bliver påvirket af f.eks en pris ændring eller lignende.

Jeg har lige lavet et hurtigt billed som kan ses her.
http://www.timmi.dk/ordermodule.JPG

Ordergroup indeholder en orderline for hvert produkt der er bestilt og hvert orderline refererer til et produkt.

Jeg indså lige at denne opbygning ikke tog højde for hvis et produkt skulle slettes ellers ændres. Dette vil påvirke alle nuværende og gamle bestillinger, hvilket ikke er hensigtsmæssigt.

Jeg havde tænkt at man i hver orderline kunne lægge info omkring pris,navn, produkt kode osv.. men dette ville bare lave en masse redundant data når disse info skulle lægge både i product og orderline. Men det ville da gøre at produkt data kunne opdateres uden at påvirke ikke behandlede ordre.

Men ville lige høre om der er nogen som har en god ide til hvordan man laver et pænt design til det formål?
Avatar billede erikjacobsen Ekspert
05. oktober 2007 - 19:41 #1
Hvorfor er det så slemt med den redundans?
Avatar billede neoman Novice
05. oktober 2007 - 19:44 #2
Din ordre(group) skal være et snapshot af "aftalen" - og den kan du ikke ændre, så ingen vej omkring redundansen, medmindre du foretrækker at have tidsafhængige versioner af Customer + Products, således at din ordrehistorik ikke forandres mens tiden går.
Avatar billede arne_v Ekspert
05. oktober 2007 - 20:04 #3
Enten må du duplikere pris feltet i ordrelinie eller så må du lave et nyt varenummer når
du ændrer pris.

Det første har den fordel at det understøtter individuelle rabatter.

Jeg vil fraråde at have en pris tabel med varenummer+fra+til som PK og så en pris. Det
vil være meget besværligt at slå op i.
Avatar billede zamiel Nybegynder
06. oktober 2007 - 17:15 #4
hmm så må jeg køre med redundans kan jeg forstå.. neo kom først med et svar så hvis du vil have pointene er de dine :)
Avatar billede neoman Novice
06. oktober 2007 - 19:05 #5
Ja okay - men arne kom også med et godt råd: KISS er godt, hvis du kender det princip:)

Og hvis vi snakker redundans, husk lige at din Customer også kan finde på at flytte, gifte sig til et andet navn, eller ændre telefonnummer:)
Avatar billede neoman Novice
06. oktober 2007 - 19:45 #6
For lige at tydeliggøre det: intet står til hinder for at bevare FKs, til oplysning og søgning, men data fra den/de record den/de peger på, eftersom de ikke er uforanderlige, kan så kopieres over på din ordergroup/orderline.
Avatar billede zamiel Nybegynder
06. oktober 2007 - 21:42 #7
Fair nok, hvis du vil dele med ham er det fint med mig :)
Avatar billede neoman Novice
07. oktober 2007 - 21:07 #8
arne er vist sejlet forbi denne her, så bare gi alle points a MOI, så laver jeg et nyt spørgsmål og giver ham det halve.
Avatar billede arne_v Ekspert
07. oktober 2007 - 21:21 #9
Jeg har vist ikke bidraget med noget her.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester



Seneste spørgsmål Seneste aktivitet
I går 23:37 Poe strøm Af lurup i LAN/WAN
I går 14:46 GIF-EDITOR Af snestrup2000 i Billedbehandling
I går 14:03 Logge ind Af Bob i PC
I går 12:12 2 skærme - 1 virker - den anden siger No signal Af eksmojo i Skærme
I går 10:33 openvpn projekt Af dcedata1977 i Windows