---
title: "Medlemsregister"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/21665-medlemsregister"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "icaaq"
published: "2001-10-07T09:33:00.000Z"
updated: "2001-10-10T09:06:00.000Z"
replies: 19
views: 497
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/databaser-sql/21665-medlemsregister"
---

# Medlemsregister

## #1 — icaaq, 2001-10-07T09:33Z

Tjenare!!
Jag håller på att bygga upp en databas som skall användas till ett medlemsregister. Men jag har lite funderingar, hur kan jag på bästa sätt få till en unik post för varje medlem??
Då säger ni säkert för er själva *använd personnr*, så tänkte jag med, och det kommer jag göra på spelarna.

Men nu ska detta register även innefatta:

tränare
styrelsemedlemar
V.I.P (personer som fått nån sorts utnämning)
Domare
det kommer säkert fler....

På exempelvis styrelsemedlemarna kommer det ju att bli lite svårt att få tag på personnummret...

Så nu kommer frågan igen vad är det bästa att ha som unik post? :q

Hur skulle ni göra ? :q

Permalänk: https://www.webforum.nu/p/21665

## #2 — LarsG, 2001-10-07T10:24Z

Använd en räknare.

jag tror inte att du får lagra personnummer i en databas utan vidare.

Permalänk: https://www.webforum.nu/p/352785

## #3 — icaaq, 2001-10-07T11:20Z

Då detta är ett medlemsregister är personnr ingen fara.

men hur menar du med räknare??

Jag skulle vilja ha en tabel med allt som en medlem kan vara, typ:

spelare
Lag
tränare
styrelsemedlemar
V.I.P (personer som fått nån sorts utnämning)
Domare
Address
Postnr
Ort
Telefon
Epost
osv osv
...

mitt problem kommer när jag lägger in två spelare typ:

Namn:@nders
Lag:wF p-90
personnr:900101-0101
Address:wFvägen 90
Postnr:100 10
Ort:wF

Namn:@nders
Lag:wF p-75
personnr:750101-0101
Address:wFvägen 10
Postnr:100 10
Ort:wF

För att jag senare ska lägga in en styrelsemedlem:

Namn:@nders
Position:Ledamot

hur gör jag för att veta vilken av dessa @nders jag ska uppdatera infon om??

Det kanske går att om det finns fler än en @nders så listar man upp dem och ber administratören att välja vilken post som ska uppdateras....Eller går det att göra på något annat vis? :q

Nu kanske inte det är så stor chans att två personer heter just @nders, men det finns kanske två stycken Per Karlsson.

Permalänk: https://www.webforum.nu/p/352786

## #4 — LarsG, 2001-10-07T11:48Z

Ungefär så här

create table persons (personid counter, FirstName varchar(30), LastName varchar(30),
               adress varchar(30), tel char(10),primary key(personid), 
    unique(firstname,lastname))

create table positions(positionid counter,position char(20),description varchar(255),
    primary key(positionid))

create table personPosition(personid int,positionid int,
  primary key(personid,positionid), foreign key(personid) references persons,
  foreign key(positionid) references positions)

Dvs om en person har flera positioner så blir det flera poster i tabellen personPosition

Sen så skulle jag se till att man får något unikt namn t.ex att man har med en initial
för andra namnet t.ex

FirstName!LastName
\---------
Per R!Karlsson
Per O!Karlsson

Om man vid en sökning får upp flera träffar så kan man lägga in någon funktion 
där man visar dessa träffar och så får man välja en av dem när man skall uppdatera.

Permalänk: https://www.webforum.nu/p/352787

## #5 — Vetgirig, 2001-10-07T12:01Z

Min rekommendation är att använda ett medlemnummer och därmed få ett unikt id för varje post. 

Notera att om du inte måste ha med det - så kan och bör du helt utelämna personnumret.

Permalänk: https://www.webforum.nu/p/352788

## #6 — icaaq, 2001-10-08T11:31Z

om jag även vill ha en poängliga ska jag lägga till fält i *personPosition* eller hur skulle ni lösa det hela ??

Permalänk: https://www.webforum.nu/p/352789

## #7 — LarsG, 2001-10-08T11:55Z

Nu vet jag inte exakt vad du menar med en poängliga men det låter som om du skulle ha det i en egen tabell.

Permalänk: https://www.webforum.nu/p/352790

## #8 — icaaq, 2001-10-08T13:58Z

Jag menar att när man som spelare gör mål eller assist i sitt lag så vill jag ha in det i nån sorts tabell ....för att kunna ta ut poängligor....

När jag tänker efter skulle jag även haft uppgifter om domaren och styrelsen....

man ska kanske göra flera tabeller med koppling till personPosition som håller reda på skytteligor, domare osv osv...

Men hur relaterar man dem med personPosition låt oss säga att jag har en medlem i klubben:

**persons**
personID!firstname!lastname!osv!osv!
\------------------------------
1!@nders!@ndersson!osv!osv

**Positions**
positionID!position!description
\----------------------------------
1!Spelare!vet ej vad jag ska skriva nu :)

**personposition**
personid!positionid!
1!1

det är väl ungefär så det är tänkt men hur ska jag göra för att relatera till tabellen skytteliga när positionid = 1 och domartabellen om positionid = 2

nån som fattar vad jag menar ??

Permalänk: https://www.webforum.nu/p/352791

## #9 — icaaq, 2001-10-08T19:13Z

Nån som förstår...

Permalänk: https://www.webforum.nu/p/352792

## #10 — LarsG, 2001-10-08T19:20Z

Jo, generellt så bör man hålla isär olika saker. Om det är något som bara gäller domare så blir det en egen tabell och något för spelare en annan tabell.

Det är ju inget problem att du i din skytteliga-tabell har två kolumner som utgör primärnyckel och dessa båda har en relation till personPosition tabellen.

Permalänk: https://www.webforum.nu/p/352793

## #11 — icaaq, 2001-10-08T19:26Z

Det är ju inget problem att du i din skytteliga-tabell har två kolumner som utgör primärnyckel och dessa båda har en relation till personPosition tabellen

men hur gör jag för att veta om PersonPosition´s id ska relatera till domartabellen eller om den ska relatera till skytteligan??

Permalänk: https://www.webforum.nu/p/352794

## #12 — LarsG, 2001-10-08T20:01Z

Relationen går åt andra hållet.

Du kan i och för sig inte få dbms att kolla att skytteligatabellen bara innehåller spelare så det får du hantera själv.

Om du använder mysql så får du hantera verifieringen av alla foreign keys själv.

Permalänk: https://www.webforum.nu/p/352795

## #13 — icaaq, 2001-10-09T06:08Z

Om du använder mysql så får du hantera verifieringen av alla foreign keys själv
vad innebär detta ??

Permalänk: https://www.webforum.nu/p/352796

## #14 — LarsG, 2001-10-09T07:24Z

I mysql kan man, när man skapar en tabell, ange att det finns en foreign key till en annan tabell. Det innebär dock inte att mysql hanterar detta på något sätt.

(Jag har gjort en liten beskrivning om hur foreign keys skall fungera i en riktig DBMS, det senaste inlägget i denna tråd).
 <http://cgi.webforum.nu/wf/Forum11/HTML/006642.html>

Permalänk: https://www.webforum.nu/p/352797

## #15 — icaaq, 2001-10-09T07:28Z

ok, men om jag använder mySQL (som jag gör) då får man styra allt genom olika insertsatser till de olika tabellerna..

har jag fattat det rätt då ?

Permalänk: https://www.webforum.nu/p/352798

## #16 — icaaq, 2001-10-09T22:35Z

Jag vill bara få det bekräftat.....

Permalänk: https://www.webforum.nu/p/352799

## #17 — LarsG, 2001-10-09T22:42Z

jo, och vid delete måste du se till att det försvinner i alla relaterade tabeller.

Permalänk: https://www.webforum.nu/p/352800

## #18 — icaaq, 2001-10-10T08:30Z

ok.dags att börja bygga.... :)

Permalänk: https://www.webforum.nu/p/352801

## #19 — LarsG, 2001-10-10T09:04Z

Lägg mycket tid på att göra datamodellen. Man brukar tjäna på det i slutändan.

Permalänk: https://www.webforum.nu/p/352802

## #20 — icaaq, 2001-10-10T09:06Z

Jag har köpt ett tre-pack kollegieblock som jag tänkt kladda slut på innan jag börjar ;) *I´l be back*

Permalänk: https://www.webforum.nu/p/352803

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/21665-medlemsregister
