Avatar billede gipa Nybegynder
01. februar 2001 - 15:25 Der er 10 kommentarer og
1 løsning

Autoincrement i dataset

Hurtigt spørgsmål:

Jeg skal i et dataset have et enkelt felt til at \"autoincrementere\" når man opretter en ny record.

Hvor svært kan det være?!  :o)
Avatar billede martinlind Nybegynder
01. februar 2001 - 15:27 #1
Hvis du bruger Paradox så vælg felttypen AutoInc


/Martin
Avatar billede gipa Nybegynder
01. februar 2001 - 15:38 #2
Jeg har oprettet fields via TClientDataSet, og her kan jeg ikke finde noget om hverken index eller increment.

Jeg har bedt Object Inspector om at autoincrementere det ene felt, men den gør det ikke... Jeg har dog fået den til at indexere feltet.
Avatar billede martinlind Nybegynder
01. februar 2001 - 16:12 #3
Jeg er ikke helt \"stiv\" i clientdataset\'et, men du er nok nød til selv at holde styr på det, du kan evt. udføre dette SQL-statement inden du inserter en ny.

SELECT MAX(<autoincfield>)+1 as NextID from <tablename>

så har du næste ID med fieldbyname(NextID)

/Martin
Avatar billede gipa Nybegynder
02. februar 2001 - 10:10 #4
Jeg har lige prøvet, men compileren brokker sig... Den skriver \"Undeclared identifier: Select\"

Skal jeg ikke gøre den opmærksom på, at jeg pludselig er i gang med SQL? Hvordan gør man det?
Avatar billede martinlind Nybegynder
02. februar 2001 - 10:15 #5
Du skal skrive det som et SQL-statement, ligesom man gør med en TQuery-component, jeg ved som sagt ikke om clientdatasetet suppertere SQL men det tror jeg det gør.

/Martin
Avatar billede martinlind Nybegynder
02. februar 2001 - 10:20 #6
Jeg har lige skimmet hjælpen, det kan du vist ikke bruge det SQL, det supporterer clientdatasetet ikke umidelbart så du må gemme nextID i en inifil eller reg.-basen.

/Martin
Avatar billede gipa Nybegynder
02. februar 2001 - 11:00 #7
Jeg får det ikke helt til at virke, men nu har jeg besluttet mig for, at de 40 records godt kan klare sig uden et varenr.....!

Har ikke rigtig tid til at gøre så meget ved det i dag, så jeg prøver igen næste gang det bliver nødvendigt.
Så tak for hjælpen, men jeg dropper det for nu.

Hilsen Rie.
Avatar billede gipa Nybegynder
02. februar 2001 - 11:03 #8
Ok, jeg havde lige misset dine to sidste svar. (Sådan er det, når man ikke lige får opdateret siden...  ;o)

Det skulle jeg nok kunne finde ud af.
Men kan jeg ikke droppe varenummeret denne gang? Behøver der at være et entydigt id, når der kun er 30-40 poster?
Avatar billede martinlind Nybegynder
02. februar 2001 - 11:07 #9
Det kommer lidt an på hvad dit behov er, det er jo rart nok at kunne kende forskel på de 40 poster, hvis du skal finde en bestemt frem, så generelt er det en god ide med en entydig id, men det kan godt lade sig gøre uden.

/Martin

PS. Delphi er et godt valg *S*
Avatar billede gipa Nybegynder
02. februar 2001 - 11:20 #10
Hvis jeg skal finde en bestemt frem, så kan jeg søge på kategori. Det har jeg nemlig fået til at virke.
Det er et intern-support-varelager, så hvis man skal se hvor mange skærme man har, kan man vælge kategorien skærme, og så kommer der måske tre poster frem (x antal 17\", x antal 19\" og x antal 21\"), så det er jo til at finde rundt i...

Så denne gang klarer jeg mig uden varenr., og så kan jeg prøve det med at gemme nr. i inifil eller reg-base næste gang.

Tusind tak for hjælpen!
Avatar billede martinlind Nybegynder
02. februar 2001 - 11:58 #11
Selv tak.

et par gode link :

www.undu.com
www.melander.dk

/Martin
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
Kurser inden for grundlæggende programmering

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