Avatar billede stewen Praktikant
19. april 2006 - 14:16 Der er 11 kommentarer og
1 løsning

Kontrol af indtastning i tabel

Jeg har en database hvor forskellige brugere skal indtaste nogle informationer - men jeg vil gerne have en kontrol på at informationen ikke er indtastet én gang før!

Brugeren indtaster:
BrugerID, Beløb, Dato

Kontrollen skal sørge for at der ikke indtastes samme beløb, dato og brugerID mere end én gang (Der må altså gerne indtastes f.eks. forskellige beløb på samme dato og samme brugerID!) - altså kontrol på at alle 3 komponenter tilsammen ikke går igen?

Nogen der lige ligger inde med løsningen?
Avatar billede terry Ekspert
19. april 2006 - 14:21 #1
make the three fields a unique key
Avatar billede terry Ekspert
19. april 2006 - 14:24 #2
In table design choose View+indexes from the menu and then choose the three fields which are to make the unique key. Give the unique key a name and choose Yes in the Unique field to make the key unique
Avatar billede stewen Praktikant
19. april 2006 - 14:39 #3
Enten misforstår jeg hvad du siger - eller også gør jeg noget forkert!

BrugerID kan bruges flere gange
Beløb kan bruges flere gange
Dato kan bruges flere gange
Sammen kan de kun bruges én gang

Det er 3 forskellige felter i min tabel - og jeg kan ikke "slå dem sammen" når jeg vælger vis+indeks.....?

(Brugeren skal indtaste via en formular - hvis det kan medføre en nemmere løsning)
Avatar billede stewen Praktikant
19. april 2006 - 14:41 #4
Bruger A 1 kr. 19-04-06 (OK)
Bruger B 1 kr. 19-04-06 (OK)
Bruger A 2 kr. 19-04-06 (OK)
Bruger A 1 kr. 18-04-06 (OK)
Bruger B 1 kr. 19-04-06 (HOV - det er allerede indtastet én gang)
Avatar billede terry Ekspert
19. april 2006 - 14:51 #5
I vis+indeks kan du lave en nøgle hvor alle tre felter undgår som en unik nøgle.

Har du prøvet det?
Avatar billede stewen Praktikant
19. april 2006 - 15:16 #6
Jeg kan følge dig at alle 3 skal være én unik nøgle!

Men når tabellen er åben i designvisning vælger jeg vis+indeks...
her har jeg muligheden for :

1) at give et Indeksnavn
2) Vælge et Feltnavn
3) Vælge sorteringsrækkefølge
4) Vælge ja/nej om det skal være et PrimærtIndeks, UniktIndeks, IgnorerNulls

Jeg kan altså ikke vælge mere end ét felt

der står godt nok at et indeks kan indeholde op til 10 felter - men hvordan vælger man mere end ét felt?
Avatar billede mugs Novice
19. april 2006 - 15:24 #7
Hold shift nede og marker felterne og tryk derefter på nøglen
Avatar billede stewen Praktikant
19. april 2006 - 15:31 #8
mugs: Er det primærnøgle du tænker på?

Tja det virker vel nok... men jeg håbet at undgå brugen af primærnøgler på den måde...
Avatar billede terry Ekspert
19. april 2006 - 15:54 #9
In the Indexs name column enter a name (myIndex for example) now in the Field name choose BrugerID
Now in the next row down choose Beløb in the field name
Now in the next row down choose datoin the field name
Now choose yes in primary index

The index name you entered makes all three fields the same index
Avatar billede terry Ekspert
19. april 2006 - 15:58 #10
MyIndex  BrugerID
        Beløb
        Dato
Avatar billede stewen Praktikant
19. april 2006 - 15:59 #11
terry - tak for vedholdenhed, det var det jeg ikke vidste!

Smid et svar!
Avatar billede terry Ekspert
19. april 2006 - 16:02 #12
svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester