Vinnaren i pepparkakshustävlingen!
2010-11-07, 17:06
  #1
Medlem
svaras avatar
Hej,

Jag behöver lite struktur hjälp. Jag har gjort en enkät med ca.12 frågor, både skriv frågor, ja och nej (radio) och ska spara svaren från enkäten i en databas. Hur strukturerar man upp det på bästa sätt? EN kolumn för varje fråga eller en tabell för varje fråga?
Citera
2010-11-07, 21:18
  #2
Medlem
kh31d4rs avatar
en tabell per fråga.
Citera
2010-11-07, 22:49
  #3
Medlem
moonclimbers avatar
Citat:
Ursprungligen postat av kh31d4r
en tabell per fråga.

Varför? Jag skulle säga att det kan vara motiverat om man ska bygga ett verktyg som kan användas till många olika undersökningar med olika frågor osv. Men i fallet att lösa en specifik undersökning klarar man sig bra med en tabell och en kolumn per fråga.
Citera
2010-11-07, 23:03
  #4
Medlem
kh31d4rs avatar
jag tänkte en sak och skrev en annan, jag får skylla på spriten. En tabell för frågor, en för alternativ, och en för svar känns rimligt.

En KOLUMN per fråga känns jävligt konstigt dock, en rad menar ni väl?
Citera
2010-11-07, 23:14
  #5
Medlem
moonclimbers avatar
Citat:
Ursprungligen postat av kh31d4r
jag tänkte en sak och skrev en annan, jag får skylla på spriten. En tabell för frågor, en för alternativ, och en för svar känns rimligt.

En KOLUMN per fråga känns jävligt konstigt dock, en rad menar ni väl?

Nej. en kolumn per fråga och en rad per ifylld enkät är det jag skulle använt mig av i just det här fallet.
Skulle det bli något mer generellt av det hela skuöle jag nog gjort nåt öiknande det du skrev ovan.
Citera
2010-11-07, 23:18
  #6
Medlem
kh31d4rs avatar
Citat:
Ursprungligen postat av moonclimber
Nej. en kolumn per fråga och en rad per ifylld enkät är det jag skulle använt mig av i just det här fallet.
Skulle det bli något mer generellt av det hela skuöle jag nog gjort nåt öiknande det du skrev ovan.

Generellt är alltid bättre. Får man för sig att lägga till en fråga så behöver man bara peta in en tupel till, istället för att behöva ändra i tabelldefinitionerna. Sen tror jag att det blir lättare att skriva queries också.
Citera
2010-11-07, 23:26
  #7
Medlem
moonclimbers avatar
Citat:
Ursprungligen postat av kh31d4r
Generellt är alltid bättre. Får man för sig att lägga till en fråga så behöver man bara peta in en tupel till, istället för att behöva ändra i tabelldefinitionerna. Sen tror jag att det blir lättare att skriva queries också.

Nu kanske jag är petig, men jag håller inte med om att generellt alltid är bättre. Hellre börja specifikt för att sedan generalisera när behovet finns. Så slipper man lägga tid på något som kanske inte kommer att behövas.
Citera
2010-11-07, 23:28
  #8
Medlem
kh31d4rs avatar
Citat:
Ursprungligen postat av moonclimber
Nu kanske jag är petig, men jag håller inte med om att generellt alltid är bättre. Hellre börja specifikt för att sedan generalisera när behovet finns. Så slipper man lägga tid på något som kanske inte kommer att behövas.

När det kommer till implementation kanske, men design ska vara generell imo.

Sen är jag nyfiken hur du tänkt knyta alternativ till de olika frågorna om de r kolumner istället för tupler? och bryr du dig det minsta om normalisering?
Citera
2010-11-07, 23:37
  #9
Medlem
moonclimbers avatar
Citat:
Ursprungligen postat av kh31d4r
När det kommer till implementation kanske, men design ska vara generell imo.

Sen är jag nyfiken hur du tänkt knyta alternativ till de olika frågorna om de r kolumner istället för tupler? och bryr du dig det minsta om normalisering?

Ja, det har du ju rätt i att det blir svårt.
Jag tänkte nog mest att man bara är ute efter att lagra svaren och inte frågorna.
Yes, jag är ett stort fan av normalisering. Har sett konsekvenserna avv att inte normaöisera lite dör ofta.
Citera
2010-11-07, 23:44
  #10
Medlem
kh31d4rs avatar
Citat:
Ursprungligen postat av moonclimber
Ja, det har du ju rätt i att det blir svårt.
Jag tänkte nog mest att man bara är ute efter att lagra svaren och inte frågorna.
Yes, jag är ett stort fan av normalisering. Har sett konsekvenserna avv att inte normaöisera lite dör ofta.

Frågan är väl om man verkligen behöven en databas i så fall..
Citera
2010-11-11, 19:39
  #11
Medlem
Leadlakes avatar
Normalisering innebär ju inte att man har en tabell för varje fråga. Det innebär att man har en tabell för alla möjliga svar på en fråga. Du lagrar fortfarande vilket svar som svarats i enkäten i din huvudtabell. En tumregel vad gäller normalisering är att skapa nya tabeller när det finns ett bestämt sätt av värden som "frågan" kan anta. Till exempel om en fråga skulle vara om vilken kommun man kommer ifrån, så kan man göra en tabell med alla Sveriges kommuner. Länkar man till dessa med en nyckel i sin huvudtabell.

Andra anledningen till att skapa nya tabeller är för läsbarhet eller för att underlätta framtida implementation av funktionalitet. Till exempel, ska användaren ladda upp en fil med enkäten så skulle jag spara filerna i en separat tabell och sen länka till dessa från huvudtabellen. Då kan jag senare lägga in fler kolumner såsom filtyp, storlek och senast ändrad om det skulle behövas utan att behöva röra min huvudtabell.

Vad gäller TS så verkar du inte vara jätteerfaren, så jag skulle rekommendera att lägga allt i samma tabell. Vad gäller strukturen på tabellen så är det en kolumn per fråga och en rad per enkät som gäller. Om någon föreslår det motsatta så vet de ärligt talat inte vad de pratar om.
Citera
2010-11-12, 12:37
  #12
Medlem
Citat:
Ursprungligen postat av moonclimber
Nu kanske jag är petig, men jag håller inte med om att generellt alltid är bättre. Hellre börja specifikt för att sedan generalisera när behovet finns. Så slipper man lägga tid på något som kanske inte kommer att behövas.
Om jag kunde lägga ihop tiden för mina generella lösningar som visat sig spara tid i slutänden skulle det bli en hel del.
Citera

Stöd Flashback

Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!

Stöd Flashback