Just nu i M3-nätverket
Gå till innehåll

En medlem, flera kurser


Jonas N. H-vall

Rekommendera Poster

Jonas N. H-vall

Jag önskar få förslag på hur jag visar vilka kurser en angiven medlem har deltagit i, respektive ej deltagit i!

 

Medlem1 borde ju kunna ha varit med i 5 kurser av 10 registrerade.

 

Mvh

/Jonas

 

Länk till kommentar
Dela på andra webbplatser

Jonas N. H-vall

Förlåt, givetvis! Jag är alldeles för insnöad i mina funderingar att jag glömt å förklara mig. Mitt problem sitter i MS Access.

 

Jag har en tabell med medlemmar för en organisation. Denna organisation bedriver olika typer av aktiviteter. Dessa aktiviteter är listade i en egen tabell.

 

I det formulär jag har för att lista och skriva in medlemmarna i organisationen vill jag nu ha möjligheten att få fram vilka aktiviteter just en särskild medlem varit med i och inte.

 

Det skulle heller inte vara så tokigt att använda formuläret för de olika aktiviteterna till att lista vilka medlemmar som var med i just den aktiviteten.

[inlägget ändrat 2003-04-12 16:45:56 av Jonas Nordin]

Länk till kommentar
Dela på andra webbplatser

Du kan ju skapa en ny kolumn och sätta in aktiviteterna den gjort separerade med tex ";". Det kan du bryta ut när du skriver ut dem på sidan.

 

Men det beror förstås på hur många aktiviteter det finns. Finns det bara ett par stycken är det ju enklast att ha en egen kolumn för varje

 

Länk till kommentar
Dela på andra webbplatser

Jonas N. H-vall

Tyvärr känns det inte riktigt smidigt. Låt säga att organisationen har 200 medlemmar, i nuläget finns cirka 10 stycken aktiviteter, vilket är ett antal som ständigt kommer att öka i antal.

 

Ifall aktivitet8 haft 70 medlemmar närvarande kan det vara bra att i princip bara sätta en bock på dessa och detta lagras.

 

En typ av "En tblAktivitet för varje tblMedlem".. men jag får inte till det!

 

Länk till kommentar
Dela på andra webbplatser

Jag vet ju inte hur din databas ser ut, men en normaliserad databas skulle kunna se ut så här:

 

------------

Medlemmar

------------

medl_ID #

....

 

 

------------

Aktiviteter

------------

aktiv_ID #

....

 

Sedan en mellankopplingstabell så här:

 

------------

MedlAktiv

------------

medl_ID #*

aktiv_ID #*

....

 

Alla attribut är förstås inte med.

 

 

_________

TicoRoman - The One And Only

 

Länk till kommentar
Dela på andra webbplatser

Jonas N. H-vall

Jag kan hänga med på det, och att varje namn upprepas för varje kurs den finns med i, det skulle inte vara så illa då det går att sortera ur vad som önskas.

 

Men hur får jag dit informationen?

 

Länk till kommentar
Dela på andra webbplatser

Det är lättast och bäst att skapa en referenstabell med de olika ID:n du har.

 

Vilka medlemmar som varit med på vilka aktiviteter måste du givetvis själv mata in. (för som jag förstod det finns denna info inte i DB:n idag?)

 

Alltså:

 

Tabell_Medlemmar

----------------

Med_ID | Med_Namn

-----------------------

1 | Sven Svensson

-----------------------

 

Tabell_Aktivitet

-----------------

Akt_ID | Akt_Namn

-----------------

1 | Fotboll

-----------------

2 | Hockey

-----------------

3 | Dans

-----------------

 

Tabell_Referens_Medlemmar_Aktivitet

------------------------------

Ref_ID | Med_ID | Akt_ID

------------------------

1 | 1 | 1

------------------------

2 | 1 | 2

------------------------

3 | 1 | 3

 

 

Dina frågor ställer du alltså direkt mot referenstabellen. För att tex få veta vilka aktiviteter Sven Svensson varit med på, hämtar du alltså de rader där Med_ID = 1.

 

Med fördel gör du en "inner join" mellan Akt_ID i referenstabllen och Akt_ID i aktivitetstabellen.

Då får du namnen på aktiviteterna direkt.

En innner join skapar du enkelt i Access.

 

/Fribbe

 

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...