webForumDet fria alternativet

funderingar kring access-databas

5 svar · 346 visningar · startad av ptr_lks

ptr_lksMedlem sedan juni 2005584 inlägg
#1

Go´morron
Jag har tänkt följande scenario:

  • på en kalendervecka
  • flera patienter skall tas prover på
  • en patient kan det behöva tas flera prover på
  • och detta kan behövas upprepas flera veckor per år
  • sedan tänkte jag med hjälp av urvalsfrågor (?) få fram en lista på vad som händer en speciell vecka

Hänger ni med så här långt?
EX

v6 tas prov på E-H, prov A + B på N-L,
v10 tas prov på S-L, F-S
v13 tas prov på E-H, prov A + B på N-L,
v21 tas prov på S-L, F-S
osv

  1. visst äär access lämplig för detta?
  2. vilket primärnyckel skall jag välja
  3. får inte riktig till tabellen - skulle uppskatta hjälp där med

Tack för all hjälp
//ptr

FraggelMedlem sedan sep. 2003301 inlägg
#2

Hur många användare har du tänkt dig?

Du behöver fler än en tabell, snabbt överslag så kräövs det MINST dessa
*Person
*Prov
*Kalender
Samt lite kopplingstabeller mellan dem.
Och hur du väljer primärnyckel det beror på vilken tabell det gäller.

ptr_lksMedlem sedan juni 2005584 inlägg
#3

Tack för ditt svar Fraggel...
kan du förklara lite det där med kopplingstabeller?

FraggelMedlem sedan sep. 2003301 inlägg
#4

Enkelt förklarat...

Primär nyckel

Person
*ID
*Namn
*notes

Undersokning
*ID
*Typ
*notes

Kalender
*UTID (unikt tids ID)
*bla
*bla

En person kan ju ha flera undersökningar under flera tider alltså har du ett EN till MÅNGA förhållande. Detta gör att du inte kan ange vilka undersökningar en person skall göra i Person tabellen utan du måste ha en kopplingstabell. Dvs en tabell som innehåller person.ID och undersokning.ID, detta ger dig dock begänsingen att en person enbart kan ta en undersökning en gång, men lägger du sedan till kalender.UTID så får du en uinik entity.
Det finns även MÅNGA - MÅNGA och EN - EN förhållanden Men vanligast är EN - MÅNGA förhållanden.

kopplingstabell
*person.ID
*undersokning.ID
*kalender.UTID

Jag tycker dock att du borde läsa på lite om databaser innan du börjar med detta, då det inte bara är till att slänga i hop något, Det jag har gjort ovan är inte ens inärheten av vad som krävs för detta, troligen så behöver du fler tabeller för att fixa detta...

Berätta gärna mer om projektet, det finns en uppsjö av program och boknings system som gör just detta. En hel del av de kunder jag har kör just den här typen av lösningar. Så det rä ju ganska dumt att uppfinna hjulet igen ;) ...

ptr_lksMedlem sedan juni 2005584 inlägg
#5

Fraggel skrev:

Jag tycker dock att du borde läsa på lite om databaser innan du börjar med detta, då det inte bara är till att slänga i hop något, Det jag har gjort ovan är inte ens inärheten av vad som krävs för detta, troligen så behöver du fler tabeller för att fixa detta...

jag försöker läsa på, men hittar inget bra :( Har du tips?

Fraggel skrev:

Berätta gärna mer om projektet, det finns en uppsjö av program och boknings system som gör just detta. En hel del av de kunder jag har kör just den här typen av lösningar. Så det rä ju ganska dumt att uppfinna hjulet igen ;) ...

Projektet är att jag jobbar som forskningsskuksköt och vi har bla. sk provtagningsstudie. Studien går ut på att vi med jämna mellanrum tar olika porver på patienter.
För närvarande har vi en stor pärm med papper på dessa patienter där det står vilken vecka och vilka prover som skall tas.
Sedan går vi varje fredag igenom manuellt och kollar ifall det är aktuellt med prover till nästa vecka. Så nu vill jag "automatisera" det hela genom att ställa en (SQL-)fråga tex vecka 13 och då skall det raddas upp alla patienter vi skall ta prover på under veckan och vilka prover som skall tas

Tack för ordet
//ptr

FraggelMedlem sedan sep. 2003301 inlägg
#6

Det finns en uppsjö av böcker om hur du bygger en databas, jag själv har bara gått några kurser och sedan så har jag kört Trail and Error metoden, så jag har nog mycket kvar att lära.

Exakt hur du skall lösa ditt problem med databasen kan jag inte svara på och heller inte vilken typ av SQL satser du skall skicka in i den samma...

Men ett tips är att börja med att rita upp vad du har på papper. Dvs vilka object kar du.
I ditt fall
*Patien/person
*Provtagning
*Kalender/tid

och börja sedan bena ner vare object
Patient/person
* Namn
* Pnr
* Adress
osv osv

Börja sedan fundera ut hur förhåller sig dessa med varandra.
Patienten skall ha en eller flera undersökningar
Patienten skall ha en eller flera tider
Skall undersökningar ha tider ?

Det är bara till att rita och fundera, testa dig fram och ställ dig frågor och rita sedan ut dem i din databas skiss, skriv sedan ner de frågor du får fram som vettiga i text form på ett papper på ren svenska, viken väg du tagit i din skiss, detta gör det MYCKET enklare att skriva dem i SQL sedan.
Ett bra ställe att få en tutorial i SQL är w3Schools.com

Lycka till

129 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)