Avatar billede koldstar Nybegynder
01. juni 2006 - 14:30 Der er 14 kommentarer og
1 løsning

Unik talkollonne

Hej Eksperter

Jeg har brug for en ny kollonne i en af mine tabeller. Kollonnen skal indeholde et unikt nummer, som bliver autogenereret når der oprettes en ny række... Hvordan kan jeg lave dette lettest?

Jeg har forsøgt at lave det med den indbyggede udtrygsgenerator, men kan ikke få det til at virke...

Autonummer duer heller ikke, da min primærnøgle i er af denne type og jeg har brug for at kunne bytte tallene om i 2 rækker...
Avatar billede jensen363 Forsker
01. juni 2006 - 14:34 #1
Kan du ikke benytte den eksisterende primær-nøgle ( autonumber ) og tilføje en ekstra karakter, eks. A-000001, A-000002 o.s.v.
Avatar billede jensen363 Forsker
01. juni 2006 - 14:36 #2
Så vil din hændelsesprocedure se nogenlunde således ud ( i en formular ):

  Me.NyUnikVærdi.Value = "A-" & Me.PrimærNøgle.Value
Avatar billede koldstar Nybegynder
01. juni 2006 - 14:40 #3
jo, det vil være helt fint. Men det hele skal ske i tabellen, f.eks via en trigger eller lignende... (kan man overhovedet laver triggers i access?)

Jeg har forsøgt at skrive følgende i standardværdien for min kollonne: [id]
(id er navnet på min primærnøgle)

Men jeg får fejlen: Databasemotoren genkender hverken feltet "id" i valideringsudtrykket eller standardværdien i tabellen "kategorier"
Avatar billede jensen363 Forsker
01. juni 2006 - 14:42 #4
Triggeren kan være hændelsestypen AfterUpdate() i et indtastningsfelt
Avatar billede koldstar Nybegynder
01. juni 2006 - 14:45 #5
mit problem er at jeg ikke har adgang til formularer, da jeg "snakker" med databasen via et webinterface... Jeg kan selvfølgelig lave logikekn via asp, men det ville være en del smartere hvis det hele lå i databasen...
Avatar billede jensen363 Forsker
01. juni 2006 - 14:47 #6
Har du ikke andre muligheder for at lave hændelser, eksempel ved lukning af formularen ?
Avatar billede koldstar Nybegynder
01. juni 2006 - 14:50 #7
jeg har kun adgang til tabeller og views når jeg henter/indsætter data fra en asp side.... Så desværre, ingen formularer :(
Avatar billede koldstar Nybegynder
01. juni 2006 - 14:51 #8
men når man opretter en ny kollonne, kan man jo indsætte en hændelseprocedure i feltet standardværdi, men jeg kan desværre ikke få det til at virke :(
Avatar billede jensen363 Forsker
01. juni 2006 - 14:51 #9
Så har du mulighed for efterfølgende at "berige" data med den ekstra unikke værdi vha. en opdateringsforespørgsel
Avatar billede koldstar Nybegynder
01. juni 2006 - 15:16 #10
ja, det er selvfølgelig en mulighed, men så skal jeg kalde den hver gang jeg har indsat en ny række....

Problemet er at det er et eksisterende system jeg sidder og er ved at tilrette, så jeg vil helst være fri for at skulle finde alle de steder der bliver indsat en ny række (flere hundrede steder)
Avatar billede jensen363 Forsker
01. juni 2006 - 15:18 #11
Der er vel kun een base ... du kan jo opdatere den pr. automatik når du åbner den
Avatar billede ffsoft Praktikant
01. juni 2006 - 15:19 #12
Når du tilgår en database gennem en webside, har du noget kode
der tilføjer en post i databasen. Det er her der kan skrives
noget kode der laver en unik værdi. Det kunne være en variabel
sammensat af dato-tid-løbenummer.
Avatar billede koldstar Nybegynder
01. juni 2006 - 15:35 #13
jensen363> Det tror jeg ikek vil være så smart. Det skal kun være ved oprettelse af nye poster, da jeg sendere skal kunen ændre dem... og så vil de jo bare blive overskrevet...
Avatar billede koldstar Nybegynder
01. juni 2006 - 15:39 #14
ffsoft> det er desvære ikke kun en funktion der skriver en post til databasen, men mange forskellige, så jeg vil skulle ændre mange steder. Jeg lavede tidligere en værdi ud fra dato, måned, time, år, minut, sekund osv som kørte i databasen. Dette kan jeg let gøre ved hjælp af now, men det er desværre muligt at nå at oprette flere poster inden for et sekund... Og mit problem er jo netop at jeg ikke kan få databasen til at genrere et løbenummer...
Avatar billede koldstar Nybegynder
28. september 2006 - 16:16 #15
lukker denne her.
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