On Sat, 13 Dec 2008 15:09:16 +0100, "Michael Sørensen" <.> wrote:
>Hej.
>
>Jeg skal oprette en database (Firebird) indeholdende alle de nøgler, som
>eksisterer i virksomheden samt registrere udleveringen af nøglerne til
>medarbejderne.
>
>Jeg havde forestillet mig en tabel
>
>tblPersonale
>Initialer, varchar(2), pk
>Navn, varchar(25)
>
>samt en tabel over nøgler og en 3. tabel, der kæder personale og nøgler
>sammen med en dato, når de udleveres.
>
>Jeg er dog alligevbel kommet i tvivl.
>
>Jeg vil lige liste eksempel på, hvad der gemmer sig under mit begreb
>"nøgler"
>
>- Proxypen (en form for datapen, der kobler alarm fra): Hver proxypen har
>eget entydigt nummer, som skal registreres på de medarbejdere, der har en
>udleveret
>- A nøgle (nøglen er ikke nummeret, dvs. alle A-nøgler der udleveres til
>medarbejdere har samme eller intet nummer)
>- AB nøgle (med forskellige numre, der skal registreres på medarbejdere)
>- AH nøgle (med forskellige numre, der skal registreres på medarbejdere)
>- HB nøgle (med forskellige numre, der skal registreres på medarbejdere)
>- C nøgle (med forskellige numre, der skal registreres på medarbejdere)
>
>osv.
>
>Hvordan vil i anbefale at man bygger tabellen til nøgler og udlevering op?
Din A-nøgle falder jo lidt uden for. Jeg ville overveje noget i stil
med nedenstående. Historik på ejerskab problemet med de manglende
numre på A-nøglerne. Jeg er desuden tilhænger af rigeligt plads i
felter.
PERSON
--------------
person_id (pk) / varchar(10)
name / varchar(100)
KEYTYPE
-------------
keytype_id (pk) / varchar(10)
KEY
-------
keytype_id (pk)
keynumber (pk) / int
PERSON_KEY
------------------
person_id (pk)
keytype_id (pk)
keynumber (pk)
accept_date / date
return_date / date
Dataeksempler:
PERSON
----------
JJ, Jens Jensen
KK, Karsten Klausen
KEYTYPE
-----------
PROXYPEN
A
AB
AH
HN
C
KEY
------
PROXYPEN, 1
PROXYPEN, 2
PROXYPEN, 3
A, 1
AB, 1
AB, 2
AB, 3
AH, 1
AH, 2
PERSON_KEY
-------------------
JJ, PROXYPEN, 1, 01-01-2008, null
JJ, A, 1, 01-01-2008, null
KK, A, 1, 05-08-2008, null
KK, AB, 2, 05-08,2008, null
|